Skip to content
  • Thomas Haller's avatar
    wifi/iwd: fix tracking of IWD-side known networks · 09988689
    Thomas Haller authored
    - since commit d17d2688, a
      NMSettingsConnection no longer "is-a" NMConnection. Instead,
      we must call nm_settings_connection_get_connection() to obtain
      the NMConnection instance. Adjust this in mirror_8021x_connection()
    
    - don't leak "ssid" in mirror_8021x_connection()
    
    - move deletion of the mirror-connection to known_network_data_free().
      Previously, we must have made sure that every g_hash_table_remove()
      and g_hash_table_insert()(!!) first deletes the mirror connection.
      Likewise, in got_object_manager() when we call g_hash_table_remove_all(),
      delete created mirror connections.
    
    - rework interface_added() to make it robust against calling
      interface_added() more than once without removing the interface
      in between. Essentially, this just means that we first look into
      "priv->known_networks" to see whether the @id is already tracked.
      And if so, delete an existing mirror-connection as necessary.
    09988689