2008-04-27 Dan Williams <dcbw@redhat.com>

* src/nm-device-802-11-wireless.c
		- (link_timeout_cb): don't ask for secrets when disconnected during
			association/authentication phase, drivers are still just too crappy



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3613 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
Dan Williams 2008-04-28 00:26:25 +00:00
parent ac58699033
commit 083c36b7b1
2 changed files with 27 additions and 14 deletions

View file

@ -1,3 +1,9 @@
2008-04-27 Dan Williams <dcbw@redhat.com>
* src/nm-device-802-11-wireless.c
- (link_timeout_cb): don't ask for secrets when disconnected during
association/authentication phase, drivers are still just too crappy
2008-04-27 Dan Williams <dcbw@redhat.com>
* Makefile.am

View file

@ -1964,22 +1964,29 @@ link_timeout_cb (gpointer user_data)
if (!encrypted || !auth_enforced)
goto time_out;
nm_connection_clear_secrets (connection);
setting_name = nm_connection_need_secrets (connection, NULL);
if (!setting_name)
goto time_out;
/* Association/authentication failed during association, probably have a
* bad encryption key and the authenticating entity (AP, RADIUS server, etc)
* denied the association due to bad credentials.
/* Drivers are still just too crappy, and emit too many disassociation
* events during connection. So for now, just let the driver and supplicant
* keep trying to associate, and don't ask for new secrets when we get
* disconnected during association.
*/
nm_info ("Activation (%s/wireless): disconnected during association,"
" asking for new key.", nm_device_get_iface (dev));
cleanup_association_attempt (self, TRUE);
nm_device_state_changed (dev, NM_DEVICE_STATE_NEED_AUTH);
nm_act_request_request_connection_secrets (req, setting_name, TRUE);
if (0) {
nm_connection_clear_secrets (connection);
setting_name = nm_connection_need_secrets (connection, NULL);
if (!setting_name)
goto time_out;
return FALSE;
/* Association/authentication failed during association, probably have a
* bad encryption key and the authenticating entity (AP, RADIUS server, etc)
* denied the association due to bad credentials.
*/
nm_info ("Activation (%s/wireless): disconnected during association,"
" asking for new key.", nm_device_get_iface (dev));
cleanup_association_attempt (self, TRUE);
nm_device_state_changed (dev, NM_DEVICE_STATE_NEED_AUTH);
nm_act_request_request_connection_secrets (req, setting_name, TRUE);
return FALSE;
}
time_out:
nm_info ("%s: link timed out.", nm_device_get_iface (dev));