summaryrefslogtreecommitdiff
path: root/src/devices
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2014-11-13 14:55:47 +0100
committerThomas Haller <thaller@redhat.com>2014-11-19 12:59:42 +0100
commit06a45fdcaff3a27fdc40f9a07ba54fffffbdef6a (patch)
treefe1951d99cd9b9d9cf9dd85caa64a44c0bd9c864 /src/devices
parent1141727690722452d3f14182cba7f5496bb5d88f (diff)
downloadNetworkManager-06a45fdcaff3a27fdc40f9a07ba54fffffbdef6a.tar.gz
firewall: don't set firewall zone for assumed devices
https://bugzilla.redhat.com/show_bug.cgi?id=1098281 Signed-off-by: Thomas Haller <thaller@redhat.com>
Diffstat (limited to 'src/devices')
-rw-r--r--src/devices/nm-device.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
index 2c60b69dd4..c86ece86ee 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
@@ -4590,6 +4590,14 @@ nm_device_activate_schedule_stage3_ip_config_start (NMDevice *self)
s_con = nm_connection_get_setting_connection (connection);
zone = nm_setting_connection_get_zone (s_con);
+
+ if (nm_device_uses_assumed_connection (self)) {
+ _LOGD (LOGD_DEVICE, "Activation: skip setting firewall zone '%s' for assumed device", zone ? zone : "default");
+ activation_source_schedule (self, nm_device_activate_stage3_ip_config_start, 0);
+ _LOGI (LOGD_DEVICE, "Activation: Stage 3 of 5 (IP Configure Start) scheduled.");
+ return;
+ }
+
_LOGD (LOGD_DEVICE, "Activation: setting firewall zone '%s'", zone ? zone : "default");
priv->fw_call = nm_firewall_manager_add_or_change_zone (nm_firewall_manager_get (),
nm_device_get_ip_iface (self),
@@ -6887,7 +6895,9 @@ _cleanup_generic_pre (NMDevice *self, gboolean deconfigure)
}
connection = nm_device_get_connection (self);
- if (deconfigure && connection) {
+ if ( deconfigure
+ && connection
+ && !nm_device_uses_assumed_connection (self)) {
nm_firewall_manager_remove_from_zone (nm_firewall_manager_get (),
nm_device_get_ip_iface (self),
NULL);