summary refs log tree commit diff
path: root/gnu/packages/patches/network-manager-platform-managed.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/network-manager-platform-managed.patch')
-rw-r--r--gnu/packages/patches/network-manager-platform-managed.patch15
1 files changed, 15 insertions, 0 deletions
diff --git a/gnu/packages/patches/network-manager-platform-managed.patch b/gnu/packages/patches/network-manager-platform-managed.patch
new file mode 100644
index 0000000000..c180c8a165
--- /dev/null
+++ b/gnu/packages/patches/network-manager-platform-managed.patch
@@ -0,0 +1,15 @@
+Check the boolean result of nm_platform_link_get_unmanaged, and if it fails,
+assume the device is unmanaged.
+
+--- NetworkManager-1.0.4/src/devices/nm-device.c	2015-07-14 12:31:56.000000000 -0400
++++ NetworkManager-1.0.4/src/devices/nm-device.c	2015-07-26 19:49:07.004024031 -0400
+@@ -1131,7 +1131,8 @@
+ 			 * Currently it can happen that NM deletes 127.0.0.1 address. */
+ 			nm_device_set_initial_unmanaged_flag (self, NM_UNMANAGED_DEFAULT, TRUE);
+ 		} else if (priv->platform_link_initialized || (priv->is_nm_owned && nm_device_is_software (self))) {
+-			nm_platform_link_get_unmanaged (NM_PLATFORM_GET, priv->ifindex, &platform_unmanaged);
++			if (!nm_platform_link_get_unmanaged (NM_PLATFORM_GET, priv->ifindex, &platform_unmanaged))
++				platform_unmanaged = TRUE;
+ 			nm_device_set_initial_unmanaged_flag (self, NM_UNMANAGED_DEFAULT, platform_unmanaged);
+ 		} else {
+ 			/* Hardware and externally-created software links stay unmanaged