Re: NM 0.6.5 unable to reconnect to WPA2 network (first connection fine)
- From: Jon Escombe <lists dresco co uk>
- To: networkmanager-list gnome org
- Subject: Re: NM 0.6.5 unable to reconnect to WPA2 network (first connection fine)
- Date: Wed, 6 Jun 2007 18:13:07 +0100 (BST)
----- "Jon Escombe" <lists dresco co uk> wrote:
> ----- "Jon Escombe" <lists dresco co uk> wrote:
> >
> > Symptom now is that on a first connection it works fine, dialog is
> > presented for the credentials and connects fine. However, once the
> > details for the network are in gconf, reconnecting to that network
> > just results in a endless loop of trying. Including an excerpt from
> > the log below. If I remove the details from gconf then it works again
> > for one time only.
> >
>
> I've managed to debug this some more, and can see that the private key
> password isn't being returned by nm-applet for a WPA-EAP connection.
>
> In nm-gconf-wso-wpa-eap.c, real_serialize_dbus(),
> nm_gconf_wso_get_key(instance) always returns null - although the key
> is present in the keyring. If I hack my real key into this function
> then it works as expected.. Any clues?
>
> Thanks,
> Jon.
Got there in the end ;) The current code has an assumption that 802.1X passwords aren't stored in the keyring, but the private key passwords for 802.1X networks ARE stored there.
The attached patch to applet-dbus-info.c gets things working for me (using a .pfx file and private key password) but I don't know if it has any implications for other 802.1X configs?
Also worth noting that I need Jon Nettleton's device-link-race.patch to get reliable connections.
Regards,
Jon.
diff -urN NetworkManager-0.6.5.original/nm-applet-0.6.5/src/applet-dbus-info.c NetworkManager-0.6.5/nm-applet-0.6.5/src/applet-dbus-info.c
--- NetworkManager-0.6.5.original/nm-applet-0.6.5/src/applet-dbus-info.c 2007-04-19 19:01:13.000000000 +0100
+++ NetworkManager-0.6.5/nm-applet-0.6.5/src/applet-dbus-info.c 2007-06-06 17:03:01.000000000 +0100
@@ -183,8 +183,7 @@
new_key = TRUE;
/* Hack: 802.1x passwords are not stored in the keyring */
- if (!new_key &&
- (we_cipher == NM_AUTH_TYPE_WPA_EAP || we_cipher == NM_AUTH_TYPE_LEAP))
+ if (!new_key && we_cipher == NM_AUTH_TYPE_LEAP)
{
NMGConfWSO *gconf_wso;
gconf_wso = nm_gconf_wso_new_deserialize_gconf (applet->gconf_client,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]