summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/devices/nm-device-6lowpan.c14
-rw-r--r--src/core/devices/nm-device-macvlan.c14
2 files changed, 22 insertions, 6 deletions
diff --git a/src/core/devices/nm-device-6lowpan.c b/src/core/devices/nm-device-6lowpan.c
index 870a1c14ef..f3386ddb58 100644
--- a/src/core/devices/nm-device-6lowpan.c
+++ b/src/core/devices/nm-device-6lowpan.c
@@ -72,14 +72,22 @@ create_and_realize(NMDevice *device,
s_6lowpan = NM_SETTING_6LOWPAN(nm_connection_get_setting(connection, NM_TYPE_SETTING_6LOWPAN));
g_return_val_if_fail(s_6lowpan, FALSE);
- parent_ifindex = parent ? nm_device_get_ifindex(parent) : 0;
+ if (!parent) {
+ g_set_error(error,
+ NM_DEVICE_ERROR,
+ NM_DEVICE_ERROR_MISSING_DEPENDENCIES,
+ "6LoWPAN device can not be created without a parent interface");
+ return FALSE;
+ }
+ parent_ifindex = nm_device_get_ifindex(parent);
if (parent_ifindex <= 0) {
g_set_error(error,
NM_DEVICE_ERROR,
NM_DEVICE_ERROR_MISSING_DEPENDENCIES,
- "6LoWPAN devices can not be created without a parent interface");
- g_return_val_if_fail(!parent, FALSE);
+ "cannot retrieve ifindex of interface %s (%s)",
+ nm_device_get_iface(parent),
+ nm_device_get_type_desc(parent));
return FALSE;
}
diff --git a/src/core/devices/nm-device-macvlan.c b/src/core/devices/nm-device-macvlan.c
index 3f57bfb1fc..06c0df07e9 100644
--- a/src/core/devices/nm-device-macvlan.c
+++ b/src/core/devices/nm-device-macvlan.c
@@ -208,14 +208,22 @@ create_and_realize(NMDevice *device,
s_macvlan = nm_connection_get_setting_macvlan(connection);
g_return_val_if_fail(s_macvlan, FALSE);
- parent_ifindex = parent ? nm_device_get_ifindex(parent) : 0;
+ if (!parent) {
+ g_set_error(error,
+ NM_DEVICE_ERROR,
+ NM_DEVICE_ERROR_MISSING_DEPENDENCIES,
+ "MACVLAN device can not be created without a parent interface");
+ return FALSE;
+ }
+ parent_ifindex = nm_device_get_ifindex(parent);
if (parent_ifindex <= 0) {
g_set_error(error,
NM_DEVICE_ERROR,
NM_DEVICE_ERROR_MISSING_DEPENDENCIES,
- "MACVLAN devices can not be created without a parent interface");
- g_return_val_if_fail(!parent, FALSE);
+ "cannot retrieve ifindex of interface %s (%s)",
+ nm_device_get_iface(parent),
+ nm_device_get_type_desc(parent));
return FALSE;
}