netbird/client/server
Zoltan Papp 998fb30e1e
[client] Check the client status in the earlier phase (#4509)
This PR improves the NetBird client's status checking mechanism by implementing earlier detection of client state changes and better handling of connection lifecycle management. The key improvements focus on:

  • Enhanced status detection - Added waitForReady option to StatusRequest for improved client status handling
  • Better connection management - Improved context handling for signal and management gRPC connections• Reduced connection timeouts - Increased gRPC dial timeout from 3 to 10 seconds for better reliability
  • Cleaner error handling - Enhanced error propagation and context cancellation in retry loops

  Key Changes

  Core Status Improvements:
  - Added waitForReady optional field to StatusRequest proto (daemon.proto:190)
  - Enhanced status checking logic to detect client state changes earlier in the connection process
  - Improved handling of client permanent exit scenarios from retry loops

  Connection & Context Management:
  - Fixed context cancellation in management and signal client retry mechanisms
  - Added proper context propagation for Login operations
  - Enhanced gRPC connection handling with better timeout management

  Error Handling & Cleanup:
  - Moved feedback channels to upper layers for better separation of concerns
  - Improved error handling patterns throughout the client server implementation
  - Fixed synchronization issues and removed debug logging
2025-09-20 22:14:01 +02:00
..
debug_test.go [client] Feature/upload bundle (#3734) 2025-04-29 00:43:50 +02:00
debug.go [misc] Move shared components to shared directory (#4286) 2025-08-05 15:22:58 +02:00
event.go [client] Add UI client event notifications (#3207) 2025-02-20 11:00:02 +01:00
forwardingrules.go [client, management] Add port forwarding (#3275) 2025-03-09 16:06:43 +01:00
log.go Restore netbird state and log level after debug (#2047) 2024-05-24 13:27:41 +02:00
network.go [misc] Move shared components to shared directory (#4286) 2025-08-05 15:22:58 +02:00
panic_generic.go [client] Log windows panics (#2829) 2024-11-01 15:08:22 +01:00
panic_windows.go [client] Feat: Support Multiple Profiles (#3980) 2025-07-25 16:54:46 +03:00
server_test.go [client] Check the client status in the earlier phase (#4509) 2025-09-20 22:14:01 +02:00
server.go [client] Check the client status in the earlier phase (#4509) 2025-09-20 22:14:01 +02:00
state_generic.go [client] Cleanup firewall state on startup (#2768) 2024-10-24 14:46:24 +02:00
state_linux.go [client] Cleanup firewall state on startup (#2768) 2024-10-24 14:46:24 +02:00
state.go [client] Feat: Support Multiple Profiles (#3980) 2025-07-25 16:54:46 +03:00
trace.go [client] Use platform-native routing APIs for freeBSD, macOS and Windows 2025-06-04 16:28:58 +02:00