networkAgent: Use VPN specific method to add VPN secrets
Use the method introduced in the previous commit to add VPN secrets instead of adding them as regular secrets/passwords. This ensures correct serialization of these secrets. Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2105 Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1535>
This commit is contained in:
parent
087bd863b3
commit
eb95f6a0fa
@ -132,9 +132,13 @@ class NetworkSecretDialog extends ModalDialog.ModalDialog {
|
||||
for (let i = 0; i < this._content.secrets.length; i++) {
|
||||
let secret = this._content.secrets[i];
|
||||
valid = valid && secret.valid;
|
||||
if (secret.key != null)
|
||||
if (secret.key !== null) {
|
||||
if (this._settingName === 'vpn')
|
||||
this._agent.add_vpn_secret(this._requestId, secret.key, secret.value);
|
||||
else
|
||||
this._agent.set_password(this._requestId, secret.key, secret.value);
|
||||
}
|
||||
}
|
||||
|
||||
if (valid) {
|
||||
this._agent.respond(this._requestId, Shell.NetworkAgentResponse.CONFIRMED);
|
||||
@ -476,7 +480,7 @@ var VPNRequestHandler = class {
|
||||
this._stdin.write('QUIT\n\n', null);
|
||||
} catch (e) { /* ignore broken pipe errors */ }
|
||||
} else {
|
||||
this._agent.set_password(this._requestId, this._previousLine, line);
|
||||
this._agent.add_vpn_secret(this._requestId, this._previousLine, line);
|
||||
this._previousLine = undefined;
|
||||
}
|
||||
} else {
|
||||
@ -552,7 +556,7 @@ var VPNRequestHandler = class {
|
||||
if (!value.length) // Ignore empty secrets
|
||||
continue;
|
||||
|
||||
this._agent.set_password(this._requestId, groups[i], value);
|
||||
this._agent.add_vpn_secret(this._requestId, groups[i], value);
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
|
Loading…
Reference in New Issue
Block a user