diff options
Diffstat (limited to 'src/libnm-client-impl/nm-ip-config.c')
-rw-r--r-- | src/libnm-client-impl/nm-ip-config.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/libnm-client-impl/nm-ip-config.c b/src/libnm-client-impl/nm-ip-config.c index 9aa2e778ce..837f3dfbab 100644 --- a/src/libnm-client-impl/nm-ip-config.c +++ b/src/libnm-client-impl/nm-ip-config.c @@ -55,6 +55,7 @@ _notify_update_prop_addresses(NMClient *client, NMLDBusObject *dbobj, const NMLDBusMetaIface *meta_iface, guint dbus_property_idx, + gboolean is_removed, GVariant *value) { NMIPConfig *self = NM_IP_CONFIG(dbobj->nmobj); @@ -64,6 +65,9 @@ _notify_update_prop_addresses(NMClient *client, int addr_family = meta_iface == &_nml_dbus_meta_iface_nm_ip4config ? AF_INET : AF_INET6; gboolean new_style; + if (is_removed) + return NML_DBUS_NOTIFY_UPDATE_PROP_FLAGS_NONE; + new_style = (((const char *) meta_iface->dbus_properties[dbus_property_idx].dbus_type)[2] == '{'); @@ -95,6 +99,7 @@ _notify_update_prop_routes(NMClient *client, NMLDBusObject *dbobj, const NMLDBusMetaIface *meta_iface, guint dbus_property_idx, + gboolean is_removed, GVariant *value) { NMIPConfig *self = NM_IP_CONFIG(dbobj->nmobj); @@ -104,6 +109,9 @@ _notify_update_prop_routes(NMClient *client, int addr_family = meta_iface == &_nml_dbus_meta_iface_nm_ip4config ? AF_INET : AF_INET6; gboolean new_style; + if (is_removed) + return NML_DBUS_NOTIFY_UPDATE_PROP_FLAGS_NONE; + new_style = (((const char *) meta_iface->dbus_properties[dbus_property_idx].dbus_type)[2] == '{'); @@ -135,6 +143,7 @@ _notify_update_prop_nameservers(NMClient *client, NMLDBusObject *dbobj, const NMLDBusMetaIface *meta_iface, guint dbus_property_idx, + gboolean is_removed, GVariant *value) { NMIPConfig *self = NM_IP_CONFIG(dbobj->nmobj); @@ -143,6 +152,9 @@ _notify_update_prop_nameservers(NMClient *client, gboolean new_style = TRUE; int addr_family = meta_iface == &_nml_dbus_meta_iface_nm_ip4config ? AF_INET : AF_INET6; + if (is_removed) + return NML_DBUS_NOTIFY_UPDATE_PROP_FLAGS_NONE; + if (addr_family == AF_INET) { new_style = (((const char *) meta_iface->dbus_properties[dbus_property_idx].dbus_type)[1] == 'a'); @@ -205,6 +217,7 @@ _notify_update_prop_wins_servers(NMClient *client, NMLDBusObject *dbobj, const NMLDBusMetaIface *meta_iface, guint dbus_property_idx, + gboolean is_removed, GVariant *value) { NMIPConfig *self = NM_IP_CONFIG(dbobj->nmobj); @@ -212,6 +225,9 @@ _notify_update_prop_wins_servers(NMClient *client, gs_strfreev char **wins_servers_new = NULL; gboolean new_style; + if (is_removed) + return NML_DBUS_NOTIFY_UPDATE_PROP_FLAGS_NONE; + new_style = (((const char *) meta_iface->dbus_properties[dbus_property_idx].dbus_type)[1] == 's'); |