mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-09-06 09:04:55 +00:00
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:
parent
84b973fd59
commit
6fd1cc39d2
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
|
||||
|
|
|
@ -470,7 +470,7 @@ nmi_dbus_get_network_properties (DBusConnection *connection,
|
|||
|
||||
/* Third arg: Trusted (BOOLEAN) */
|
||||
dbus_message_iter_append_basic (&iter, DBUS_TYPE_BOOLEAN, &trusted);
|
||||
|
||||
|
||||
/* Fourth arg: List of AP BSSIDs (ARRAY, STRING) */
|
||||
dbus_message_iter_open_container (&iter, DBUS_TYPE_ARRAY, DBUS_TYPE_STRING_AS_STRING, &array_iter);
|
||||
if (bssids_value && (g_slist_length (gconf_value_get_list (bssids_value)) > 0))
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -1394,7 +1394,7 @@ nm_device_802_11_wireless_set_essid (NMDevice80211Wireless *self,
|
|||
wreq.u.essid.pointer = (caddr_t) safe_essid;
|
||||
wreq.u.essid.length = strlen ((char *) safe_essid) + 1;
|
||||
wreq.u.essid.flags = 1; /* Enable essid on card */
|
||||
|
||||
|
||||
#ifdef IOCTL_DEBUG
|
||||
nm_info ("%s: About to SET IWESSID.", iface);
|
||||
#endif
|
||||
|
@ -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 */
|
||||
|
|
Loading…
Reference in a new issue