mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-29 05:40:11 +01:00
ovs/ovsdb: track the devices before we signal addition
This doesn't make any difference in practice, but it seems more correct. It would cause issues if we decided to remove an interface from the signal handler.
This commit is contained in:
parent
f2c066e104
commit
e948ce7deb
1 changed files with 3 additions and 3 deletions
|
|
@ -923,6 +923,7 @@ ovsdb_got_update (NMOvsdb *self, json_t *msg)
|
|||
ovs_interface->name = g_strdup (name);
|
||||
ovs_interface->type = g_strdup (type);
|
||||
ovs_interface->connection_uuid = _connection_uuid_from_external_ids (external_ids);
|
||||
g_hash_table_insert (priv->interfaces, g_strdup (key), ovs_interface);
|
||||
if (old) {
|
||||
_LOGT ("changed an '%s' interface: %s%s%s", type, ovs_interface->name,
|
||||
ovs_interface->connection_uuid ? ", " : "",
|
||||
|
|
@ -947,7 +948,6 @@ ovsdb_got_update (NMOvsdb *self, json_t *msg)
|
|||
ovs_interface->connection_uuid,
|
||||
json_string_value (error));
|
||||
}
|
||||
g_hash_table_insert (priv->interfaces, g_strdup (key), ovs_interface);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -984,6 +984,7 @@ ovsdb_got_update (NMOvsdb *self, json_t *msg)
|
|||
ovs_port->connection_uuid = _connection_uuid_from_external_ids (external_ids);
|
||||
ovs_port->interfaces = g_ptr_array_new_with_free_func (g_free);
|
||||
_uuids_to_array (ovs_port->interfaces, items);
|
||||
g_hash_table_insert (priv->ports, g_strdup (key), ovs_port);
|
||||
if (old) {
|
||||
_LOGT ("changed a port: %s%s%s", ovs_port->name,
|
||||
ovs_port->connection_uuid ? ", " : "",
|
||||
|
|
@ -995,7 +996,6 @@ ovsdb_got_update (NMOvsdb *self, json_t *msg)
|
|||
g_signal_emit (self, signals[DEVICE_ADDED], 0,
|
||||
ovs_port->name, NM_DEVICE_TYPE_OVS_PORT);
|
||||
}
|
||||
g_hash_table_insert (priv->ports, g_strdup (key), ovs_port);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1032,6 +1032,7 @@ ovsdb_got_update (NMOvsdb *self, json_t *msg)
|
|||
ovs_bridge->connection_uuid = _connection_uuid_from_external_ids (external_ids);
|
||||
ovs_bridge->ports = g_ptr_array_new_with_free_func (g_free);
|
||||
_uuids_to_array (ovs_bridge->ports, items);
|
||||
g_hash_table_insert (priv->bridges, g_strdup (key), ovs_bridge);
|
||||
if (old) {
|
||||
_LOGT ("changed a bridge: %s%s%s", ovs_bridge->name,
|
||||
ovs_bridge->connection_uuid ? ", " : "",
|
||||
|
|
@ -1043,7 +1044,6 @@ ovsdb_got_update (NMOvsdb *self, json_t *msg)
|
|||
g_signal_emit (self, signals[DEVICE_ADDED], 0,
|
||||
ovs_bridge->name, NM_DEVICE_TYPE_OVS_BRIDGE);
|
||||
}
|
||||
g_hash_table_insert (priv->bridges, g_strdup (key), ovs_bridge);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue