Re: NM 0.6.5 unable to reconnect to WPA2 network (first connection fine) - take 2



> Tomáš Hnyk wrote:
> 
> >>
> >> So out of interest, what fields do you use in the configuration
> >> dialog? I am using "identity", "private key file," and "private key
> >> password".
> >>
> >> Regards,
> >> Jon.
> >>
> > The config windows should look like this:
> > http://eduroam.fjfi.cvut.cz/images/eduroam_linux2.png
> > i.e. identity, password and CA Certificate File
> > Regards,
> > Tomas
> >
> 
> Ok, I'm thinking that the trigger to obtain the password from the
> keyring might be the presence of a "private key file" value in the
> gconf
> data?
> 
> Regards,
> Jon.

Attaching a new version of my patch, this checks whether a private key file is configured for the connection before attempting to read a password from the keyring. I believe this should suit both of the above 802.1X configuration types..

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-07 12:12:41.000000000 +0100
@@ -152,6 +152,7 @@
 	char *			temp = NULL;
 	char *			escaped_network;
 	int			we_cipher = -1;
+	char * 			private_key_file = NULL;
 
 	g_return_val_if_fail (applet != NULL, NULL);
 	g_return_val_if_fail (message != NULL, NULL);
@@ -182,9 +183,14 @@
          || !temp)
 		new_key = TRUE;
 
+	nm_gconf_get_string_helper (applet->gconf_client,
+                              GCONF_PATH_WIRELESS_NETWORKS,
+                              "wpa_eap_private_key_file", escaped_network, &private_key_file);
+
 	/* 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))
+		((we_cipher == NM_AUTH_TYPE_WPA_EAP && !private_key_file) ||
+		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]