Commit Graph

1458 Commits

Author SHA1 Message Date
e407fe02c5 Separate lifecircle of handshake, ice, relay connections
- fix Stun, Turn address update thread safety issue
- move conn worker login into peer package
2024-06-17 17:52:22 +02:00
a7760bf0a7 Configurable relay address with env variable 2024-06-14 15:43:18 +02:00
64f949abbb Integrate relay into peer conn
- extend mgm with relay address
- extend signaling with remote peer's relay address
- start setup relay connection before engine start
2024-06-14 14:40:31 +02:00
38f2a59d1b Add comment 2024-06-12 10:56:21 +02:00
9504012920 Set the proper buffer size in the client code 2024-06-09 21:10:57 +02:00
5e93d117cf Use buf pool
- eliminate reader function generation
- fix write to closed channel panic
2024-06-09 20:33:35 +02:00
8c70b7d7ff Replace ws lib on client side 2024-06-09 12:41:52 +02:00
ed8def4d9b Protect ws writing in Gorilla ws 2024-06-07 16:07:35 +02:00
1e115e3893 Merge branch 'main' into feature/relay 2024-06-06 13:38:40 +02:00
deffe037aa Respect env for debug and routes sub commands (#2026) 2024-06-06 10:59:10 +02:00
fed9e587af Add close message type 2024-06-05 19:49:30 +02:00
983d7bafbe Remove unused variables from peer conn (#2074)
Remove unused variables from peer conn
2024-06-04 17:04:50 +02:00
a40d4d2f32 - add comments
- avoid double closing messages
- add cleanup routine for relay manager
2024-06-04 14:40:35 +02:00
4da29451d0 Add missing openid scope when requesting JWT token (#2089)
According to the Zitadel documentation, `openid` scope is required
when requesting JWT tokens.

Apparently Zitadel was accepting requests without it until very
recently. Now lack thereof causes 400 Bad Requests which makes it
impossible to authenticate to the Netbird dashboard.

https://zitadel.com/docs/guides/integrate/service-users/client-credentials#2-authenticating-a-service-user-and-request-a-token
2024-06-04 10:46:24 +02:00
15818b72c6 Add alternative ws server implementation 2024-06-03 21:38:37 +02:00
0556dc1860 Avoid nil pointer exception in test in case of err 2024-06-03 21:36:46 +02:00
2b369cd28f Add quic transporter 2024-06-03 20:17:43 +02:00
9d44a476c6 Fix double unlock in client.go 2024-06-03 20:14:39 +02:00
9b3449753e Ignore candidates whose IP falls into a routed network. (#2084)
This will prevent peer connections via other peers.
2024-06-03 17:31:37 +02:00
456629811b Prevent using expired ctx when sending metrics (#2088) 2024-06-03 12:41:15 +02:00
57ddb5f262 Add comment 2024-06-03 11:22:16 +02:00
4ced07dd8d Fix close conn threading issue 2024-06-03 01:37:56 +02:00
3430b81622 Add relay server tracking 2024-06-01 11:48:15 +02:00
fd4ad15c83 Move reconnection logic to separated struct 2024-06-01 11:25:00 +02:00
c311d0d19e Fill the UI version info in system meta on Android (#2077) 2024-05-31 17:26:56 +02:00
521f7dd39f Improve login performance (#2061) 2024-05-31 16:41:12 +02:00
f9ec0a9a2e Fix PKCE auth html (#2079) 2024-05-30 17:22:58 +02:00
012235ff12 Add FindExistingPostureCheck (#2075) 2024-05-30 15:22:42 +02:00
4ff069a102 Support multiple server 2024-05-29 16:40:26 +02:00
7cc3964a4d Use mux for http server
Without it can not start multiple http
server instances for unit tests
2024-05-29 16:11:58 +02:00
6d627f1923 Code cleaning 2024-05-28 01:27:53 +02:00
076ce69a24 Add reconnect logic 2024-05-28 01:00:25 +02:00
f176807ebe Add extra logs for account not found, peer login and getAccount (#2053) v0.27.10 2024-05-27 12:29:28 +02:00
d4c47eaf8a Don't allow delete group from peer groups (#2055) 2024-05-27 11:06:43 +02:00
645a1f31a7 Fix writing/reading to a closed conn 2024-05-27 10:25:08 +02:00
b4aa7e50f9 Close sockets on server cmd 2024-05-27 09:42:27 +02:00
d35a79d3b5 Upgrade gRPC and OpenTelemetry packages for compatibility (#2003)
Upgrades `go.opentelemetry.io/otel` from version` v1.11.1` to `v1.26.0`. The upgrade addresses compatibility issues caused by the removal of several sub-packages in the latest OpenTelemetry release, which were causing broken dependencies.

**Key Changes:**
- Upgraded `go.opentelemetry.io/otel` from `v1.11.1` to `v1.26.0`.

- Fixed broken dependencies by replacing the deprecated sub-packages:
  - `go.opentelemetry.io/otel/metric/instrument`
  - `go.opentelemetry.io/otel/metric/instrument/asyncint64`
  - `go.opentelemetry.io/otel/metric/instrument/syncint64`
  
- Upgraded `google.golang.org/grpc` from `v1.56.3`  to `v1.64.0` which deprecate `Dial` and `DialContext` to `NewClient`.
2024-05-27 08:39:18 +02:00
6a2929011d Refactor firewall manager check (#2054)
Some systems don't play nice with a test chain
So we dropped the idea, and instead we check for the filter table

With this check, we might face a case where iptables is selected once and on the 
next netbird up/down it will go back to using nftables
2024-05-27 08:37:32 +02:00
173ca25dac Fix in client the close event 2024-05-26 22:14:33 +02:00
e877c9d6c1 Update CODE_OF_CONDUCT.md (#2048) 2024-05-24 17:29:14 +02:00
7a1c96ebf4 Remove extra error mapping (#2050) 2024-05-24 14:46:11 +02:00
41fe9f84ec Extend integrated validator with error handling (#2044) 2024-05-24 13:29:25 +02:00
d13fb0e379 Restore netbird state and log level after debug (#2047) 2024-05-24 13:27:41 +02:00
f3214527ea Use info log-level for firewall manager discover (#2045)
* Use info log-level for firewall manager discover

* Update client/firewall/create_linux.go

Co-authored-by: Viktor Liu <17948409+lixmal@users.noreply.github.com>

---------

Co-authored-by: Viktor Liu <17948409+lixmal@users.noreply.github.com>
2024-05-24 13:03:19 +02:00
69048bfd34 Revert "Accept any XDG_ environment variable to determine desktop (#2037)" (#2042)
This reverts commit 67e2185964.
v0.27.9
2024-05-23 23:15:02 +02:00
29a2d93873 Log global lock acquisition per user (#2039) v0.27.8 2024-05-23 17:09:58 +02:00
6b01b0020e Enhance firewall manager checks to detect unsupported iptables (#2038)
Our nftables firewall manager may cause issues when rules are created using older iptable versions
2024-05-23 16:09:51 +02:00
9d3db68805 Return the proper error when a peer is deleted (#2035)
this fixes an issue causing peers to keep retrying the connection after a peer is removed from the management system
2024-05-23 14:59:09 +02:00
2e315311e0 Fix the initial daemon retry interval (#2036) 2024-05-23 14:52:52 +02:00
36b2cd16cc Remove channel binding logic 2024-05-23 13:24:02 +02:00