summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBeniamino Galvani <bgalvani@redhat.com>2018-07-06 15:54:16 +0200
committerBeniamino Galvani <bgalvani@redhat.com>2018-07-06 17:12:33 +0200
commit18b7cd34fc50a9e9458ac5747234277e19ed17c4 (patch)
tree3193d2a75358f896f12762e5d240eaa951fb7029
parentd1a98d689297e520f0289915f594738f8ab5d670 (diff)
downloadNetworkManager-bg/vpn-activation-with-device.tar.gz
manager: accept non-null device for VPN activationsbg/vpn-activation-with-device
Commit 10753c36168a ("manager: merge VPN handling into _new_active_connection()") added a check to fail the activation of VPNs when a device is passed to ActivateConnection(), since the device argument is ignored for VPNs. This broke activating VPNs from nm-applet as nm-applet sets both the specific_object (parent-connection) and device arguments in the activation request. Note that we already check in _new_active_connection() that when a device is supplied, it matches the device of the parent connection. Therefore, the check can be dropped. Reported-by: Michael Biebl <biebl@debian.org> Fixes: 10753c36168a82cd658df8a7da800960fddd78ed
-rw-r--r--src/nm-manager.c16
1 files changed, 1 insertions, 15 deletions
diff --git a/src/nm-manager.c b/src/nm-manager.c
index 67c71fea91..4c4b6bb5a9 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
@@ -4611,21 +4611,7 @@ validate_activation_request (NMManager *self,
}
}
- if (is_vpn && device) {
- /* VPN's are treated specially. Maybe the should accept a device as well,
- * however, later on during activation, we don't handle the device.
- *
- * Maybe we should, and maybe it makes sense to specify a device
- * when activating a VPN. But for now, just error out. */
- g_set_error_literal (error,
- NM_MANAGER_ERROR,
- NM_MANAGER_ERROR_UNKNOWN_DEVICE,
- "Cannot specify device when activating VPN");
- return NULL;
- }
-
- nm_assert ( ( is_vpn && !device)
- || (!is_vpn && NM_IS_DEVICE (device)));
+ nm_assert (is_vpn || NM_IS_DEVICE (device));
*out_device = device;
*out_is_vpn = is_vpn;