2005-01-29 Dan Williams <dcbw@redhat.com>
* initscript/RedHat/NetworkManager - Don't spit out sysctl stuff to console * libnm_glib/libnm_glib.c - (libnm_glib_init): call dbus_g_thread_init() * panel-applet/NMWirelessAppletDbus.c - (nmwa_dbus_worker): call dbus_g_thread_init() * src/NetworkManager.c - (main): call dbus_g_thread_init() * src/NetworkManagerAPList.c - (nm_ap_list_print_members): use LOG_ERR instead of LOG_DEBUG so we can actually see what's there in a normal syslog * src/NetworkManagerDevice.c - (nm_device_activate_wireless): print out the "waiting for access point" message only once, then say what access point we actually got after the wait. - (nm_device_need_ap_switch): If a scan is in progress when we're in this function, wait until the scan is done. Scans may change the ESSID of the card, making this function think we need to switch access points - (nm_device_wireless_process_scan_results): for artificial access points don't check against the card's ESSID, but the best_ap's ESSID. This prevents collisions with the scanning code, which may change the card's ESSID and cause the access point to get dropped from the device's AP list. Also increase the keep-around time to 2m from 60s since the max scan interval could be 60s in some cases. * src/NetworkManagerPolicy.c - (nm_policy_activation_finish): Don't add invalid MAC addresses to GConf - (nm_policy_allowed_ap_list_update): When we update, make sure we copy over the new properties and ESSIDs to the device's AP list. Fixes some races between NM and NMI. git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@401 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
@@ -260,7 +260,7 @@ gboolean nm_policy_activation_finish (gpointer user_data)
|
||||
nm_ap_set_address (ap, &addr);
|
||||
|
||||
/* Don't store MAC addresses for non-infrastructure networks */
|
||||
if (nm_ap_get_mode (ap) == NETWORK_MODE_INFRA)
|
||||
if ((nm_ap_get_mode (ap) == NETWORK_MODE_INFRA) && nm_ethernet_address_is_valid (&addr))
|
||||
nm_dbus_add_network_address (data->dbus_connection, NETWORK_TYPE_ALLOWED, nm_ap_get_essid (ap), &addr);
|
||||
|
||||
nm_ap_unref (ap);
|
||||
@@ -492,6 +492,13 @@ static gboolean nm_policy_allowed_ap_list_update (gpointer user_data)
|
||||
{
|
||||
NMAccessPoint *best_ap;
|
||||
|
||||
/* Once we have the list, copy in any relevant information from our Allowed list and fill
|
||||
* 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_ap_list_get (data->active_device), data->allowed_ap_list);
|
||||
nm_ap_list_copy_properties (nm_device_ap_list_get (data->active_device), data->allowed_ap_list);
|
||||
|
||||
best_ap = nm_device_get_best_ap (data->active_device);
|
||||
if (!best_ap)
|
||||
nm_device_update_best_ap (data->active_device);
|
||||
|
Reference in New Issue
Block a user