fix(networking): stop storing the VPN username as a secret (#2116)

This PRs diff fixes #2109 such that a VPN username now gets written to
`vpn.data`, where NetworkManager and the VPN plugins actually read it
from. The existing `vpn.data` dict is read and merged rather than
replaced, so unrelated keys like remote and ca survive the update.

Profiles saved by earlier versions already have the username sitting in
the keyring, so the secret agent filters it out on read as well. Without
that, the stale entry keeps getting replayed to NetworkManager and
affected connections stay broken after upgrading.
This commit is contained in:
akrm al-hakimi 2026-07-28 18:29:19 -04:00 • committed by GitHub
parent 25cc9ef31b
commit 7287257ec9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 109 additions and 20 deletions

4
Cargo.lock generated
View file

@ -5042,9 +5042,9 @@ checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
[[package]]
name = "nmrs"
version = "3.4.1"
version = "3.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8c58e7c48ffdccfa5164000de751cbdf5c9cb2d79a33e75b9e2618ab72ea86f7"
checksum = "33e42c05118e18f29f55eefa2fbfd98a06b0c7a1a829bdb0f328137d358c6013"
dependencies = [
"async-trait",
"base64",