NetworkManager/src/core
Beniamino Galvani afe600caae device: set firewall zone when re-entering stage3
The ifindex of a virtual device is set when the kernel link
appears. For OVS interfaces, this happens after NM has added the
record to the ovsdb; since NM needs to know the related port and
bridge when it adds ovs-interface record, and since interfaces are
enslaved when they reach stage3, the ifindex is set during stage3.

This means that the first time
nm_device_activate_schedule_stage3_ip_config_start() is called, the
ifindex is unset. Previously we would just set the firewall state as
initialized and the zone would never be set again. Instead, allow the
zone to be set when re-entering stage3.

nm_device_activate_schedule_stage3_ip_config_start() now always check
for the ifindex. This guarantees that we don't try to change zone for
devices without a kernel link (for example, OVS bridges and ports).

Upon reaching state ip-check, the device now changes the zone also if
an ifindex is present and the zone was not set before. I'm not sure
this can actually happen, because if the device has an ifindex it
should be set during stage3. However I'm leaving this extra check for
completeness.

https://bugzilla.redhat.com/show_bug.cgi?id=1921107
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/737
2021-02-04 10:50:15 +01:00
..
devices device: set firewall zone when re-entering stage3 2021-02-04 10:50:15 +01:00
dhcp all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
dns all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
dnsmasq all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
initrd all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
ndisc all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
platform all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
ppp all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
settings all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
supplicant all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
systemd all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
tests all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
vpn all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
main-utils.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
main-utils.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
main.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
meson.build all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
NetworkManagerUtils.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
NetworkManagerUtils.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-act-request.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-act-request.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-active-connection.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-active-connection.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-audit-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-audit-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-auth-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-auth-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-auth-utils.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-auth-utils.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-checkpoint-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-checkpoint-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-checkpoint.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-checkpoint.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-config-data.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-config-data.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-config.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-config.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-connectivity.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-connectivity.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-core-utils.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-core-utils.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dbus-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dbus-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dbus-object.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dbus-object.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dbus-utils.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dbus-utils.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dcb.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dcb.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dhcp-config.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dhcp-config.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dispatcher.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-dispatcher.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-firewall-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-firewall-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-hostname-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-hostname-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-iface-helper.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-ip-config.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-ip-config.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-ip4-config.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-ip4-config.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-ip6-config.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-ip6-config.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-keep-alive.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-keep-alive.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-l3-config-data.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-l3-config-data.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-l3-ipv4ll.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-l3-ipv4ll.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-l3cfg.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-l3cfg.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-netns.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-netns.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-pacrunner-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-pacrunner-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-policy.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-policy.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-proxy-config.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-proxy-config.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-rfkill-manager.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-rfkill-manager.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-session-monitor.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-session-monitor.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-sleep-monitor.c all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-sleep-monitor.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-test-utils-core.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
nm-types.h all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00
org.freedesktop.NetworkManager.conf all: move "src/" directory to "src/core/" 2021-02-04 09:45:55 +01:00