diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2022-07-15 10:43:53 +0200 |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2022-07-18 08:15:15 +0200 |
commit | 8388f67d3da69c8c86ea801220cdb284495f8a07 (patch) | |
tree | 9caf5815e3107c56924ec5f617d83042cf910ac8 | |
parent | ace95e51130b41f39785358bf955b7086bb41c1e (diff) |
device: add "is_manual" argument to ready_for_ip_config() device method
Some device types might want to run manual ip configuration while
skipping other methods.
(cherry picked from commit 2ae8433520be69b95dccefba416c19d28fb38a85)
(cherry picked from commit 2128e4542e2a668dd4fcce0f94d3e5b4fbc5b0f8)
-rw-r--r-- | src/core/devices/nm-device.c | 4 | ||||
-rw-r--r-- | src/core/devices/nm-device.h | 2 | ||||
-rw-r--r-- | src/core/devices/ovs/nm-device-ovs-bridge.c | 2 | ||||
-rw-r--r-- | src/core/devices/ovs/nm-device-ovs-interface.c | 2 | ||||
-rw-r--r-- | src/core/devices/ovs/nm-device-ovs-port.c | 2 | ||||
-rw-r--r-- | src/core/devices/wwan/nm-device-modem.c | 2 |
6 files changed, 7 insertions, 7 deletions
diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c index 0a5d826d34..6417882eb2 100644 --- a/src/core/devices/nm-device.c +++ b/src/core/devices/nm-device.c @@ -11628,7 +11628,7 @@ activate_stage3_ip_config_for_addr_family(NMDevice *self, int addr_family, const priv->ip_data_x[IS_IPv4].wait_for_ports = FALSE; } - if (klass->ready_for_ip_config && !klass->ready_for_ip_config(self)) + if (klass->ready_for_ip_config && !klass->ready_for_ip_config(self, FALSE)) goto out_devip; if (IS_IPv4) { @@ -11892,7 +11892,7 @@ activate_stage3_ip_config(NMDevice *self) } if (!nm_device_sys_iface_state_is_external(self) - && (!klass->ready_for_ip_config || klass->ready_for_ip_config(self))) { + && (!klass->ready_for_ip_config || klass->ready_for_ip_config(self, TRUE))) { if (priv->ipmanual_data.state_6 == NM_DEVICE_IP_STATE_NONE && !NM_IN_STRSET(ipv6_method, NM_SETTING_IP6_CONFIG_METHOD_DISABLED, diff --git a/src/core/devices/nm-device.h b/src/core/devices/nm-device.h index a7badb8610..90d03478a9 100644 --- a/src/core/devices/nm-device.h +++ b/src/core/devices/nm-device.h @@ -346,7 +346,7 @@ typedef struct _NMDeviceClass { NMActStageReturn (*act_stage1_prepare)(NMDevice *self, NMDeviceStateReason *out_failure_reason); NMActStageReturn (*act_stage2_config)(NMDevice *self, NMDeviceStateReason *out_failure_reason); void (*act_stage3_ip_config)(NMDevice *self, int addr_family); - gboolean (*ready_for_ip_config)(NMDevice *self); + gboolean (*ready_for_ip_config)(NMDevice *self, gboolean is_manual); const char *(*get_ip_method_auto)(NMDevice *self, int addr_family); diff --git a/src/core/devices/ovs/nm-device-ovs-bridge.c b/src/core/devices/ovs/nm-device-ovs-bridge.c index 683ada1339..ea77dd189e 100644 --- a/src/core/devices/ovs/nm-device-ovs-bridge.c +++ b/src/core/devices/ovs/nm-device-ovs-bridge.c @@ -67,7 +67,7 @@ get_generic_capabilities(NMDevice *device) } static gboolean -ready_for_ip_config(NMDevice *device) +ready_for_ip_config(NMDevice *device, gboolean is_manual) { return FALSE; } diff --git a/src/core/devices/ovs/nm-device-ovs-interface.c b/src/core/devices/ovs/nm-device-ovs-interface.c index 74707d2482..61fac6f81c 100644 --- a/src/core/devices/ovs/nm-device-ovs-interface.c +++ b/src/core/devices/ovs/nm-device-ovs-interface.c @@ -194,7 +194,7 @@ set_platform_mtu(NMDevice *device, guint32 mtu) } static gboolean -ready_for_ip_config(NMDevice *device) +ready_for_ip_config(NMDevice *device, gboolean is_manual) { return nm_device_get_ip_ifindex(device) > 0; } diff --git a/src/core/devices/ovs/nm-device-ovs-port.c b/src/core/devices/ovs/nm-device-ovs-port.c index 116f58c43a..6ba52f406b 100644 --- a/src/core/devices/ovs/nm-device-ovs-port.c +++ b/src/core/devices/ovs/nm-device-ovs-port.c @@ -61,7 +61,7 @@ get_generic_capabilities(NMDevice *device) } static gboolean -ready_for_ip_config(NMDevice *device) +ready_for_ip_config(NMDevice *device, gboolean is_manual) { return FALSE; } diff --git a/src/core/devices/wwan/nm-device-modem.c b/src/core/devices/wwan/nm-device-modem.c index 11a994ea74..aee59cd59f 100644 --- a/src/core/devices/wwan/nm-device-modem.c +++ b/src/core/devices/wwan/nm-device-modem.c @@ -621,7 +621,7 @@ is_available(NMDevice *device, NMDeviceCheckDevAvailableFlags flags) } static gboolean -ready_for_ip_config(NMDevice *device) +ready_for_ip_config(NMDevice *device, gboolean is_manual) { /* Tell NMDevice to only run device-specific IP * configuration (devip) and skip other methods |