netbird/client
Bethuel Mmbaga 8febab4076
Improve Client Authentication (#1135)
* shutdown the pkce server on user cancellation

* Refactor openURL to exclusively manage authentication flow instructions and browser launching

* Refactor authentication flow initialization based on client OS

The NewOAuthFlow method now first checks the operating system and if it is a non-desktop Linux, it opts for Device Code Flow. PKCEFlow is tried first and if it fails, then it falls back on Device Code Flow. If both unsuccessful, the authentication process halts and error messages have been updated to provide more helpful feedback for troubleshooting authentication errors

* Replace log-based Linux desktop check with process check

To verify if a Linux OS is running a desktop environment in the Authentication utility, the log-based method that checks the XDG_CURRENT_DESKTOP env has been replaced with a method that checks directly if either X or Wayland display server processes are running. This method is more reliable as it directly checks for the display server process rather than relying on an environment variable that may not be set in all desktop environments.

* Refactor PKCE Authorization Flow to improve server handling

* refactor check for linux running desktop environment

* Improve server shutdown handling and encapsulate handlers with new server multiplexer

The changes enhance the way the server shuts down by specifying a context with timeout of 5 seconds, adding a safeguard to ensure the server halts even on potential hanging requests. Also, the server's root handler is now encapsulated within a new ServeMux instance, to support multiple registrations of a path
2023-09-19 19:06:18 +03:00
..
android Fix sso check (#1152) 2023-09-18 16:04:53 +02:00
cmd Improve Client Authentication (#1135) 2023-09-19 19:06:18 +03:00
firewall Add default firewall rule to allow netbird traffic (#1056) 2023-09-05 21:07:32 +02:00
internal Improve Client Authentication (#1135) 2023-09-19 19:06:18 +03:00
proto Adding --external-ip-map and --dns-resolver-address and shorthand flags (#652) 2023-01-17 19:16:50 +01:00
server Update GitHub Actions and Enhance golangci-lint (#1075) 2023-09-04 17:03:44 +02:00
ssh add sleep and comment 2023-06-23 17:02:34 +02:00
system feat: add support for custom device hostname (#789) 2023-04-20 16:00:22 +02:00
testdata Replace IP allocation logic (#342) 2022-05-29 22:43:39 +02:00
ui Add version info command to signal server (#739) 2023-03-15 07:54:51 +01:00
Dockerfile Update client Dockerfile to use Alpine as base image and install necessary packages (#1078) 2023-08-12 16:12:09 +02:00
installer.nsis Bind implementation (#779) 2023-04-13 17:00:01 +02:00
main.go Clarify XORMapped panic case (#877) 2023-05-18 19:47:36 +02:00
manifest.xml Renaming project builds and including new Icons (#318) 2022-05-21 18:42:56 +02:00
netbird.wxs Add Wix file for MSI builds (#1099) 2023-09-04 11:15:39 +02:00
resources.rc Bind implementation (#779) 2023-04-13 17:00:01 +02:00