Android app crashes when Rosenpass is enabled
Describe the problem
In the Android app I enable Rosenpass in the advance settings, then I hit "connect". After connecting and showing the number of peers the app crashes.
When I disable Rosenpass again, the connection gets established without crashing.
Are you using NetBird Cloud?
Yes - NetBird Cloud.
NetBird version
Android app version 0.1.7
Is any other VPN software installed?
Yes. Tailscale and Proton VPN, but they are disabled.
Debug output
08-14 13:44:58.548 16782 16814 I GoLog : time=2025-08-14T11:44:58.548Z level=DEBUG msg="Sending message" pid="YlGGu+cD21f3rjjIbZetFv48emNOVz1AmoTGnjagqpg=" type=InitHello
08-14 13:44:58.550 16782 16814 I GoLog : time=2025-08-14T11:44:58.550Z level=DEBUG msg="Started new handshake" pid="YlGGu+cD21f3rjjIbZetFv48emNOVz1AmoTGnjagqpg=" sidi=6aa98752
08-14 13:44:58.551 16782 16814 I GoLog : time=2025-08-14T11:44:58.551Z level=DEBUG msg="Added peer" pid="YlGGu+cD21f3rjjIbZetFv48emNOVz1AmoTGnjagqpg="
08-14 13:44:58.554 16782 0 E Go : panic: runtime error: invalid memory address or nil pointer dereference
08-14 13:44:58.554 16782 0 E Go : [signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x6c606e327c]
08-14 13:44:58.554 16782 0 E Go :
08-14 13:44:58.554 16782 0 E Go : goroutine 494 [running]:
08-14 13:44:58.554 16782 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*NetbirdHandler).AddPeer(...)
08-14 13:44:58.554 16782 0 E Go : /Users/pzoli/netbird/android-client/netbird/client/internal/rosenpass/netbird_handler.go:44
08-14 13:44:58.554 16782 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*Manager).addPeer(0x4000907080, {0x40030fa000?, 0x6c5fa5c07d?, 0x2b?}, {0x4000010230, 0x6}, {0x40035c2820, 0xe}, {0x4000a5a390, 0x2c})
08-14 13:44:58.554 16782 0 E Go : /Users/pzoli/netbird/android-client/netbird/client/internal/rosenpass/manager.go:86 +0x2ac
08-14 13:44:58.554 16782 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*Manager).OnConnected(0x4000907080, {0x4000a5a390, 0x2c}, {0x40030fa000, 0x7ff80, 0x80000}, {0x40035c2820, 0xe}, {0x4000010230, 0x6})
08-14 13:44:58.554 16782 0 E Go : /Users/pzoli/netbird/android-client/netbird/client/internal/rosenpass/manager.go:188 +0x1a8
08-14 13:44:58.554 16782 0 E Go : github.com/netbirdio/netbird/client/internal/peer.(*Conn).doOnConnected(0x40000caa08, {0x40030fa000, 0x7ff80, 0x80000}, {0x4000010230, 0x6})
08-14 13:44:58.554 16782 0 E Go : /Users/pzoli/netbird/android-client/netbird/client/internal/peer/conn.go:652 +0xa4
08-14 13:44:58.554 16782 0 E Go : github.com/netbirdio/netbird/client/internal/peer.(*Conn).onRelayConnectionIsReady(0x40000caa08, {{0x6c60c08218, 0x40035c0780}, {0x40030fa000, 0x7ff80, 0x80000}, {0x4000010230, 0x6}})
08-14 13:44:58.554 16782 0 E Go : /Users/pzoli/netbird/android-client/netbird/client/internal/peer/conn.go:530 +0x530
08-14 13:44:58.554 16782 0 E Go : created by github.com/netbirdio/netbird/client/internal/peer.(*WorkerRelay).OnNewOffer in goroutine 246
08-14 13:44:58.554 16782 0 E Go : /Users/pzoli/netbird/android-client/netbird/client/internal/peer/worker_relay.go:87 +0x3c4
08-14 13:44:58.554 16782 16815 F libc : Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 16815 (Thread-4), pid 16782 (.netbird.client)
08-14 13:44:58.708 17867 17867 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
08-14 13:44:58.711 17867 17867 I crash_dump64: performing dump of process 16782 (target tid = 16815)
08-14 13:44:58.994 17867 17867 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
08-14 13:44:58.994 17867 17867 F DEBUG : Build fingerprint: 'google/tokay/tokay:16/BP2A.250705.008/13578956:user/release-keys'
08-14 13:44:58.994 17867 17867 F DEBUG : Revision: 'MP1.0'
08-14 13:44:58.994 17867 17867 F DEBUG : ABI: 'arm64'
08-14 13:44:58.994 17867 17867 F DEBUG : Timestamp: 2025-08-14 13:44:58.723194595+0200
08-14 13:44:58.994 17867 17867 F DEBUG : Process uptime: 278s
08-14 13:44:58.994 17867 17867 F DEBUG : Cmdline: io.netbird.client
08-14 13:44:58.994 17867 17867 F DEBUG : pid: 16782, tid: 16815, name: Thread-4 >>> io.netbird.client <<<
08-14 13:44:58.994 17867 17867 F DEBUG : uid: 1010420
08-14 13:44:58.994 17867 17867 F DEBUG : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
08-14 13:44:58.994 17867 17867 F DEBUG : pac_enabled_keys: 000000000000000f (PR_PAC_APIAKEY, PR_PAC_APIBKEY, PR_PAC_APDAKEY, PR_PAC_APDBKEY)
08-14 13:44:58.994 17867 17867 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
08-14 13:44:58.994 17867 17867 F DEBUG : x0 0000000000000000 x1 00000000000041af x2 0000000000000006 x3 0000000000000008
08-14 13:44:58.994 17867 17867 F DEBUG : x4 0000000000000001 x5 0000000000000001 x6 0000000000000000 x7 000000000000000a
08-14 13:44:58.994 17867 17867 F DEBUG : x8 0000000000000083 x9 000000000000005c x10 0000000000000006 x11 0000006c60f020ba
08-14 13:44:58.994 17867 17867 F DEBUG : x12 0000000000000005 x13 0000000000000010 x14 0000000000000004 x15 000000000000001c
08-14 13:44:58.994 17867 17867 F DEBUG : x16 0000006c54901b90 x17 0000006c549f9040 x18 0000006c547ac000 x19 000000000000418e
08-14 13:44:58.994 17867 17867 F DEBUG : x20 0000006c549f8ee0 x21 0000004000071808 x22 000000000000001c x23 6a371f67747cf4b9
08-14 13:44:58.994 17867 17867 F DEBUG : x24 de1334d706e8ff4b x25 1c2d2cc2815a36cc x26 0000000000000000 x27 0000000000000010
08-14 13:44:58.994 17867 17867 F DEBUG : x28 0000004000a2f6c0 x29 000000400098f9a8
08-14 13:44:58.994 17867 17867 F DEBUG : lr 0000006c5fc92f50 sp 000000400098f9b0 pc 0000006c5fcb8dd8 pst 0000000080001000
08-14 13:44:58.994 17867 17867 F DEBUG : 1 total frames
08-14 13:44:58.994 17867 17867 F DEBUG : backtrace:
08-14 13:44:58.994 17867 17867 F DEBUG : #00 pc 00000000006afdd8 /data/app/~~fPCYJ-q2cHydcguYT7v_yg==/io.netbird.client-XjPbHrLHqC6Rf01q9iWfyQ==/split_config.arm64_v8a.apk (offset 0x4000) (runtime.raise.abi0+40) (BuildId: 269325c02f9e0a958cf5f866975f0fb6676642de)
Having the exact same issue. I've noticed the crash specifically occurs the second you connect to at least 1 other peer with Rosenpass enabled.
@guedressel out of interest, what type of Android device are you using, and does it run a custom ROM/forked version of Android?
Xiaomi-14 on android 15 (security patch 2005 - 08) / Netbird self-hosted. Same issue:
When rosenpass is deactivated from app it works, but obviously cannot connect to peers. When enabling rosenpass:
...
...
...
09-15 11:26:33.096 26856 15365 I GoLog : time=2025-09-15T09:26:33.096Z level=DEBUG msg="Started new handshake" pid="0kRst31dM2kVXr0B0M6Pd/8Q+B7VmZ/V+jVn/nu953w=" sidi=6e0a69bf
09-15 11:26:33.098 26856 15366 I GoLog : time=2025-09-15T09:26:33.098Z level=DEBUG msg="Added peer" pid="0kRst31dM2kVXr0B0M6Pd/8Q+B7VmZ/V+jVn/nu953w="
09-15 11:26:33.100 26856 0 E Go : panic: runtime error: invalid memory address or nil pointer dereference
09-15 11:26:33.100 26856 0 E Go : [signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x6ebbf36f50]
09-15 11:26:33.100 26856 0 E Go :
09-15 11:26:33.100 26856 0 E Go : goroutine 1856 [running]:
09-15 11:26:33.100 26856 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*NetbirdHandler).AddPeer(...)
09-15 11:26:33.100 26856 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/rosenpass/netbird_handler.go:44
09-15 11:26:33.100 26856 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*Manager).addPeer(0x4004012a00, {0x4004406000?, 0x6ebb24a09b?, 0x2b?}, {0x400621b876, 0x6}, {0x400406a2b0, 0xe}, {0x4000859f50, 0x2c})
09-15 11:26:33.100 26856 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/rosenpass/manager.go:86 +0x2b0
09-15 11:26:33.100 26856 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*Manager).OnConnected(0x4004012a00, {0x4000859f50, 0x2c}, {0x4004406000, 0x7ff80, 0x80000}, {0x400406a2b0, 0xe}, {0x400621b876, 0x6})
09-15 11:26:33.100 26856 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/rosenpass/manager.go:188 +0x1b0
09-15 11:26:33.100 26856 0 E Go : github.com/netbirdio/netbird/client/internal/peer.(*Conn).doOnConnected(0x4002b58248, {0x4004406000, 0x7ff80, 0x80000}, {0x400621b876, 0x6})
09-15 11:26:33.100 26856 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/peer/conn.go:623 +0xa8
09-15 11:26:33.100 26856 0 E Go : github.com/netbirdio/netbird/client/internal/peer.(*Conn).onRelayConnectionIsReady(0x4002b58248, {{0x6ebc3cd510, 0x4003c2c740}, {0x4004406000, 0x7ff80, 0x80000}, {0x400621b876, 0x6}})
09-15 11:26:33.100 26856 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/peer/conn.go:502 +0x524
09-15 11:26:33.100 26856 0 E Go : created by github.com/netbirdio/netbird/client/internal/peer.(*WorkerRelay).OnNewOffer in goroutine 1573
09-15 11:26:33.100 26856 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/peer/worker_relay.go:89 +0x3fc
09-15 11:26:33.101 26856 21406 I libc : handling signal: 6
--------- beginning of crash
09-15 11:26:33.101 26856 21406 F libc : Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 21406 (.netbird.client), pid 26856 (.netbird.client)
09-15 11:26:33.101 26856 21406 I libc : debuggerd_dispatch_pseudothread start. crashing tid: 21406
09-15 11:26:33.123 26856 21406 I libc : crash_dump pid: 21433
...
...
...
Have the same issue as @guedressel and the others on a Samsung Pad Android 13 and a Google Pixel 8 Android 16 (September 2025 update state). Both with the latest netbird app v0.57.0 and UI version v0.1.9
I am also having this issue
Same for me - ref https://github.com/netbirdio/android-client/issues/87
Same issue.
I gave both the logs and the files related to the logs of @xcslabs to ChatGPT 5.0 Extended Thinking.
This is the answer ChatGPT gave, and possibly the solution or at least a start @Ghx0sty @guedressel
I don't know who I should tag (who are the main developers) Please help me tag them so it can get fixed
CHATGPT Answer: Here’s a concise comment you can paste into the GitHub issue—what’s happening, why it crashes on Android (GrapheneOS/Xiaomi, etc.), and what the proper fix is so Rosenpass actually works (not just hiding the panic).
Summary (user perspective) The app panics when a peer connects. This is not just a crash: it also means Rosenpass isn’t actually applying preshared keys to WireGuard on Android, so you don’t get the promised “quantum-resistance.” The code currently masks an initialization error and then dereferences a nil handler.
What’s happening
-
The crash is a nil-pointer panic in
rosenpass.NetbirdHandler.AddPeercalled fromrosenpass.Manager.addPeerduringOnConnected. -
In
netbird/client/internal/rosenpass/manager.go,generateConfig()calls:// file: netbird/client/internal/rosenpass/manager.go m.rpWgHandler, _ = NewNetbirdHandler(m.preSharedKey, m.ifaceName) // error ignoredIf
NewNetbirdHandlerfails, it returns(nil, err). Because the error is ignored,m.rpWgHandlerstays nil. Later,addPeer(...)callsm.rpWgHandler.AddPeer(...)→ nil receiver → panic. -
Why does
NewNetbirdHandlerfail? Innetbird/client/internal/rosenpass/netbird_handler.goit does:// file: netbird/client/internal/rosenpass/netbird_handler.go hdlr.client, err = wgctrl.New()On Android (GrapheneOS, Xiaomi, etc.),
wgctrl.New()commonly fails because the process can’t access the kernel WG API or a userspace WG UAPI socket at the expected path. SELinux/permissions and non-standard UAPI locations are typical causes. So the handler never initializes.
Bottom line: ignoring that constructor error both causes the panic and can make the app look like Rosenpass is active when it can’t actually apply keys.
Why this matters
Without a working handler, Rosenpass never updates the WireGuard peer’s preshared key after the handshake. That means you don’t get the intended post-quantum protection on Android—even if logs/UI hint that Rosenpass is “enabled.”
Best fix (not just hiding the crash)
A. Fail fast instead of continuing with a nil handler Propagate the error and abort Rosenpass startup if the handler can’t be built:
// file: netbird/client/internal/rosenpass/manager.go
- m.rpWgHandler, _ = NewNetbirdHandler(m.preSharedKey, m.ifaceName)
+ var err error
+ m.rpWgHandler, err = NewNetbirdHandler(m.preSharedKey, m.ifaceName /* see B */)
+ if err != nil {
+ return rp.Config{}, fmt.Errorf("creating rosenpass wg handler: %w", err)
+ }
(Also add a nil check before using m.rpWgHandler in addPeer / removePeer to prevent any future regressions.)
B. Make Rosenpass work on Android by removing the hard dependency on wgctrl
On Android, don’t rely on wgctrl. NetBird already configures WG locally via its own interfaces (WGIface / EndpointUpdater). Use those to apply the PSK that comes from Rosenpass:
- Introduce a small interface the handler can use to set a peer’s PSK and read current peers:
// file: netbird/client/internal/rosenpass/wg_configurator.go
type WGConfigurator interface {
UpdatePeerPSK(pub wgtypes.Key, psk *wgtypes.Key, endpoint *net.UDPAddr, allowedIPs []wgtypes.IPNet) error
PeerSnapshot() ([]wgtypes.Peer, error)
RemovePeer(pub wgtypes.Key) error
}
- Provide an Android implementation of
WGConfiguratorthat calls the existing NetBird Android WG code (nowgctrl):
// file: netbird/client/internal/rosenpass/wg_configurator_android.go
//go:build android
type wgConfiguratorAndroid struct { /* holds your WGIface */ }
- Change
NetbirdHandlerto depend onWGConfiguratorinstead ofwgctrl.Client:
// file: netbird/client/internal/rosenpass/netbird_handler.go
- client *wgctrl.Client
+ cfg WGConfigurator
…and replace client.Device(...) / ConfigureDevice(...) with cfg.PeerSnapshot(...) / cfg.UpdatePeerPSK(...) / cfg.RemovePeer(...).
- In
manager.go, construct the right configurator per platform and pass it toNewNetbirdHandler(...). On Android, use the Android adapter; on desktop/server builds you can keep a defaultwgctrl-based adapter.
C. Don’t advertise “Rosenpass enabled” until it actually applied a key
Gate any “Rosenpass enabled” / status bit behind a successful call to UpdatePeerPSK(...) (e.g., set a simple “healthy” flag in the handler after the first successful apply). That prevents false positives when the handler couldn’t initialize.
Why this is the right approach
- It surfaces the real error (instead of crashing later on a nil) and avoids misleading users.
- It makes Rosenpass actually functional on Android (GrapheneOS, Xiaomi, etc.) by using the configuration path that already works there.
- It preserves the existing
wgctrlpath on platforms where it does work. - It gives a clear health signal so the UI/logs only claim “Rosenpass enabled” when keys are actually being rotated.
Minimal acceptance criteria / testing
- On Android, connect two peers and observe that after handshake the handler logs a successful PSK apply (e.g., “applied rosenpass PSK to
”). - Verify via your WG state that the peer’s preshared key changes post-handshake.
- Ensure the app does not mark Rosenpass enabled (or silently continue) if the handler cannot initialize.
If maintainers prefer to keep wgctrl everywhere, they’ll need to ensure a working UAPI path and permissions on Android—which is brittle across devices/ROMs. The adapter approach above is more robust and keeps the promise of Rosenpass on Android without special privileges.
+1, crash with Rosenpass
same problem here (pixel 8a, current update):
1-27 11:05:58.557 29016 29059 I GoLog : time=2025-11-27T10:05:58.557Z level=DEBUG msg="Added peer" pid="D9t146WqPQaSS7xx5SfiAoJzJiSwOG4+Tfv7/2LTbbo="
11-27 11:05:58.561 29016 0 E Go : panic: runtime error: invalid memory address or nil pointer dereference
11-27 11:05:58.561 29016 0 E Go : [signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x6bf1f05530]
11-27 11:05:58.561 29016 0 E Go :
11-27 11:05:58.561 29016 0 E Go : goroutine 472 [running]:
11-27 11:05:58.561 29016 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*NetbirdHandler).AddPeer(...)
11-27 11:05:58.561 29016 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/rosenpass/netbird_handler.go:44
11-27 11:05:58.562 29016 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*Manager).addPeer(0x4000570400, {0x40016bc000?, 0x6bf119db2c?, 0x6bf14fee4c?}, {0x4000010310, 0x6}, {0x4000011650, 0xe}, {0x400018cb40, 0x2c})
11-27 11:05:58.562 29016 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/rosenpass/manager.go:86 +0x2b0
11-27 11:05:58.562 29016 0 E Go : github.com/netbirdio/netbird/client/internal/rosenpass.(*Manager).OnConnected(0x4000570400, {0x400018cb40, 0x2c}, {0x40016bc000, 0x7ff80, 0x80000}, {0x4000011650, 0xe}, {0x4000010310, 0x6})
11-27 11:05:58.562 29016 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/rosenpass/manager.go:188 +0x1b0
11-27 11:05:58.562 29016 0 E Go : github.com/netbirdio/netbird/client/internal/peer.(*Conn).doOnConnected(0x4000156488, {0x40016bc000, 0x7ff80, 0x80000}, {0x4000010310, 0x6})
11-27 11:05:58.562 29016 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/peer/conn.go:620 +0xa8
11-27 11:05:58.562 29016 0 E Go : github.com/netbirdio/netbird/client/internal/peer.(*Conn).onRelayConnectionIsReady(0x4000156488, {{0x6bf23f22c8, 0x400088e440}, {0x40016bc000, 0x7ff80, 0x80000}, {0x4000010310, 0x6}})
11-27 11:05:58.562 29016 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/peer/conn.go:510 +0x540
11-27 11:05:58.563 29016 0 E Go : created by github.com/netbirdio/netbird/client/internal/peer.(*WorkerRelay).OnNewOffer in goroutine 348
11-27 11:05:58.563 29016 0 E Go : /home/runner/work/android-client/android-client/netbird/client/internal/peer/worker_relay.go:89 +0x3fc
11-27 11:05:58.564 29016 29053 F libc : Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 29053 (Thread-11), pid 29016 (.netbird.client)
11-27 11:05:58.776 29515 29515 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
11-27 11:05:58.777 739 739 I tombstoned: received crash request for pid 29053
11-27 11:05:58.779 29515 29515 I crash_dump64: performing dump of process 29016 (target tid = 29053)
11-27 11:05:58.992 29515 29515 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
11-27 11:05:58.992 29515 29515 F DEBUG : Build fingerprint: 'google/akita/akita:16/BP3A.251105.015/14339231:user/release-keys'
11-27 11:05:58.992 29515 29515 F DEBUG : Kernel Release: '6.1.134-android14-11-g66e758f7d0c0-ab13748739'
11-27 11:05:58.992 29515 29515 F DEBUG : Revision: 'MP1.0'
11-27 11:05:58.992 29515 29515 F DEBUG : ABI: 'arm64'
11-27 11:05:58.992 29515 29515 F DEBUG : Timestamp: 2025-11-27 11:05:58.800929210+0100
11-27 11:05:58.992 29515 29515 F DEBUG : Process uptime: 30s
11-27 11:05:58.992 29515 29515 F DEBUG : Executable: /system/bin/app_process64
11-27 11:05:58.992 29515 29515 F DEBUG : Cmdline: io.netbird.client
11-27 11:05:58.992 29515 29515 F DEBUG : pid: 29016, tid: 29053, name: Thread-11 >>> io.netbird.client <<<
11-27 11:05:58.992 29515 29515 F DEBUG : uid: 10422
11-27 11:05:58.992 29515 29515 F DEBUG : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
11-27 11:05:58.992 29515 29515 F DEBUG : pac_enabled_keys: 000000000000000f (PR_PAC_APIAKEY, PR_PAC_APIBKEY, PR_PAC_APDAKEY, PR_PAC_APDBKEY)
11-27 11:05:58.992 29515 29515 F DEBUG : esr: 0000000092000006 (Data Abort Exception 0x24)
11-27 11:05:58.992 29515 29515 F DEBUG : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
11-27 11:05:58.992 29515 29515 F DEBUG : x0 0000000000000000 x1 000000000000717d x2 0000000000000006 x3 0000000000000008
11-27 11:05:58.992 29515 29515 F DEBUG : x4 0000000000000001 x5 0000000000000001 x6 0000000000000000 x7 000000000000000a
11-27 11:05:58.992 29515 29515 F DEBUG : x8 0000000000000083 x9 0000000000000068 x10 0000000000000013 x11 0000006bf270282d
11-27 11:05:58.992 29515 29515 F DEBUG : x12 0000000000000005 x13 0000006bf125c74c x14 0000000000000060 x15 0000000000000061
11-27 11:05:58.992 29515 29515 F DEBUG : x16 0000006beef6aba0 x17 0000006bef062050 x18 0000006ba2d30000 x19 0000000000007158
11-27 11:05:58.992 29515 29515 F DEBUG : x20 0000006bef061ef0 x21 0000004000071508 x22 0000000000000021 x23 6f07c77fc2c6a238
11-27 11:05:58.992 29515 29515 F DEBUG : x24 d49dd4e632947262 x25 d9b498e5ba5ae236 x26 0000000000000000 x27 0000000000000010
11-27 11:05:58.992 29515 29515 F DEBUG : x28 00000040000f0700 x29 0000004000af7998
11-27 11:05:58.992 29515 29515 F DEBUG : lr 0000006bf13e7a84 sp 0000004000af79a0 pc 0000006bf1410518 pst 0000000080001000
11-27 11:05:58.992 29515 29515 F DEBUG : esr 0000000092000006
11-27 11:05:58.992 29515 29515 F DEBUG : 1 total frames
11-27 11:05:58.992 29515 29515 F DEBUG : backtrace:
11-27 11:05:58.992 29515 29515 F DEBUG : #00 pc 00000000006ce518 /data/app/~~Y1J7cRZPzVPdEt5WicTiaQ==/io.netbird.client-9baP81_Hf1u_mHEr7g0AHg==/split_config.arm64_v8a.apk (offset 0x8000) (runtime.raise.abi0+40)
11-27 11:05:59.005 739 739 E tombstoned: Tombstone written to: tombstone_25
Ditto here. Crash happens on first peer connection. Disabling Rosenpass in the app allows it to connect, and disabling it on all peers allows the mesh to resume, as expected. Pixel 10 Pro XL with Android 16 and self hosting. Nothing new to add.