2006-04-20 Robert Love <rml@novell.com>
Fix bug where hidden ESSID's would not show up in the applet, even if NMI provided a BSSID -> ESSID mapping from Gconf. This occurred because nm_policy_device_list_update_from_allowed_list() would merge the data, putting a name to the hidden networks, but never notify NMI of the changes. Simple fix is to invoke the function nm_dbus_signal_wireless_network_change() if we make a mapping. * src/NetworkManagerAPList.c: Call the function nm_dbus_signal_wireless_network_change() if we made a successful BSSID to ESSID mapping, notifying the applet of the "new" network. * src/NetworkManagerAPList.h: Update the prototypes for both nm_ap_list_copy_essids_by_address() and nm_ap_list_copy_one_essid_by_address(). git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@1700 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
15
ChangeLog
15
ChangeLog
@@ -1,3 +1,18 @@
|
||||
2006-04-20 Robert Love <rml@novell.com>
|
||||
|
||||
Fix bug where hidden ESSID's would not show up in the applet, even
|
||||
if NMI provided a BSSID -> ESSID mapping from Gconf. This occurred
|
||||
because nm_policy_device_list_update_from_allowed_list() would merge
|
||||
the data, putting a name to the hidden networks, but never notify NMI
|
||||
of the changes. Simple fix is to invoke the function
|
||||
nm_dbus_signal_wireless_network_change() if we make a mapping.
|
||||
* src/NetworkManagerAPList.c: Call the function
|
||||
nm_dbus_signal_wireless_network_change() if we made a successful
|
||||
BSSID to ESSID mapping, notifying the applet of the "new" network.
|
||||
* src/NetworkManagerAPList.h: Update the prototypes for both
|
||||
nm_ap_list_copy_essids_by_address() and
|
||||
nm_ap_list_copy_one_essid_by_address().
|
||||
|
||||
2006-04-20 Robert Love <rml@novell.com>
|
||||
|
||||
* gnome/applet/applet-dbus-info.c: Don't bail out if the timestamp is
|
||||
|
@@ -589,7 +589,10 @@ void nm_ap_list_copy_properties (NMAccessPointList *dest, NMAccessPointList *sou
|
||||
* If one is found, copy the essid over to the original access point.
|
||||
*
|
||||
*/
|
||||
void nm_ap_list_copy_one_essid_by_address (NMAccessPoint *ap, NMAccessPointList *search_list)
|
||||
void nm_ap_list_copy_one_essid_by_address (NMData *app_data,
|
||||
NMDevice80211Wireless *dev,
|
||||
NMAccessPoint *ap,
|
||||
NMAccessPointList *search_list)
|
||||
{
|
||||
NMAccessPoint *found_ap;
|
||||
|
||||
@@ -599,7 +602,10 @@ void nm_ap_list_copy_one_essid_by_address (NMAccessPoint *ap, NMAccessPointList
|
||||
if (!nm_ap_get_essid (ap) && (found_ap = nm_ap_list_get_ap_by_address (search_list, nm_ap_get_address (ap))))
|
||||
{
|
||||
if (nm_ap_get_essid (found_ap))
|
||||
{
|
||||
nm_ap_set_essid (ap, nm_ap_get_essid (found_ap));
|
||||
nm_dbus_signal_wireless_network_change (app_data->dbus_connection, dev, ap, NETWORK_STATUS_APPEARED, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -612,7 +618,10 @@ void nm_ap_list_copy_one_essid_by_address (NMAccessPoint *ap, NMAccessPointList
|
||||
* its found, copy the source access point's essid to the dest access point.
|
||||
*
|
||||
*/
|
||||
void nm_ap_list_copy_essids_by_address (NMAccessPointList *dest, NMAccessPointList *source)
|
||||
void nm_ap_list_copy_essids_by_address (NMData *app_data,
|
||||
NMDevice80211Wireless *dev,
|
||||
NMAccessPointList *dest,
|
||||
NMAccessPointList *source)
|
||||
{
|
||||
NMAPListIter *iter;
|
||||
NMAccessPoint *dest_ap;
|
||||
@@ -623,7 +632,7 @@ void nm_ap_list_copy_essids_by_address (NMAccessPointList *dest, NMAccessPointLi
|
||||
if ((iter = nm_ap_list_iter_new (dest)))
|
||||
{
|
||||
while ((dest_ap = nm_ap_list_iter_next (iter)))
|
||||
nm_ap_list_copy_one_essid_by_address (dest_ap, source);
|
||||
nm_ap_list_copy_one_essid_by_address (app_data, dev, dest_ap, source);
|
||||
|
||||
nm_ap_list_iter_free (iter);
|
||||
}
|
||||
|
@@ -48,8 +48,8 @@ NMAccessPoint * nm_ap_list_get_ap_by_essid (NMAccessPointList *list, const char
|
||||
NMAccessPoint * nm_ap_list_get_ap_by_address (NMAccessPointList *list, const struct ether_addr *addr);
|
||||
|
||||
void nm_ap_list_copy_properties (NMAccessPointList *dest, NMAccessPointList *source);
|
||||
void nm_ap_list_copy_essids_by_address (NMAccessPointList *dest, NMAccessPointList *source);
|
||||
void nm_ap_list_copy_one_essid_by_address (NMAccessPoint *ap, NMAccessPointList *search_list);
|
||||
void nm_ap_list_copy_essids_by_address (NMData *app_data, NMDevice80211Wireless *dev, NMAccessPointList *dest, NMAccessPointList *source);
|
||||
void nm_ap_list_copy_one_essid_by_address (NMData *app_data, NMDevice80211Wireless *dev, NMAccessPoint *ap, NMAccessPointList *search_list);
|
||||
|
||||
gboolean nm_ap_list_merge_scanned_ap (NMDevice80211Wireless *dev, NMAccessPointList *list, NMAccessPoint *merge_ap);
|
||||
|
||||
|
@@ -608,7 +608,7 @@ static gboolean nm_policy_device_list_update_from_allowed_list (NMData *data)
|
||||
* in the ESSID of base stations that aren't broadcasting their ESSID, if we have their
|
||||
* MAC address in our allowed list.
|
||||
*/
|
||||
nm_ap_list_copy_essids_by_address (nm_device_802_11_wireless_ap_list_get (wdev), data->allowed_ap_list);
|
||||
nm_ap_list_copy_essids_by_address (data, wdev, nm_device_802_11_wireless_ap_list_get (wdev), data->allowed_ap_list);
|
||||
nm_ap_list_copy_properties (nm_device_802_11_wireless_ap_list_get (wdev), data->allowed_ap_list);
|
||||
}
|
||||
else
|
||||
|
@@ -3259,7 +3259,7 @@ add_new_ap_to_device_list (NMDevice80211Wireless *dev,
|
||||
if (!nm_ap_get_essid (ap))
|
||||
{
|
||||
nm_ap_set_broadcast (ap, FALSE);
|
||||
nm_ap_list_copy_one_essid_by_address (ap, app_data->allowed_ap_list);
|
||||
nm_ap_list_copy_one_essid_by_address (app_data, dev, ap, app_data->allowed_ap_list);
|
||||
}
|
||||
|
||||
/* Add the AP to the device's AP list */
|
||||
|
Reference in New Issue
Block a user