about summary refs log tree commit diff
path: root/src/core/devices/nm-device-tun.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/devices/nm-device-tun.c')
-rw-r--r--src/core/devices/nm-device-tun.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/devices/nm-device-tun.c b/src/core/devices/nm-device-tun.c
index cbea7d7d..430e62aa 100644
--- a/src/core/devices/nm-device-tun.c
+++ b/src/core/devices/nm-device-tun.c
@@ -284,7 +284,10 @@ _same_og(const char *str, gboolean og_valid, guint32 og_num)
 }
 
 static gboolean
-check_connection_compatible(NMDevice *device, NMConnection *connection, GError **error)
+check_connection_compatible(NMDevice     *device,
+                            NMConnection *connection,
+                            gboolean      check_properties,
+                            GError      **error)
 {
     NMDeviceTun        *self = NM_DEVICE_TUN(device);
     NMDeviceTunPrivate *priv = NM_DEVICE_TUN_GET_PRIVATE(self);
@@ -292,10 +295,10 @@ check_connection_compatible(NMDevice *device, NMConnection *connection, GError *
     NMSettingTun       *s_tun;
 
     if (!NM_DEVICE_CLASS(nm_device_tun_parent_class)
-             ->check_connection_compatible(device, connection, error))
+             ->check_connection_compatible(device, connection, check_properties, error))
         return FALSE;
 
-    if (nm_device_is_real(device)) {
+    if (check_properties && nm_device_is_real(device)) {
         switch (priv->props.type) {
         case IFF_TUN:
             mode = NM_SETTING_TUN_MODE_TUN;