diff --git a/NetworkManager.spec b/NetworkManager.spec index 2b0f7c5..a1c710e 100644 --- a/NetworkManager.spec +++ b/NetworkManager.spec @@ -16,7 +16,7 @@ Name: NetworkManager Summary: Network connection manager and user applications Epoch: 1 Version: 0.7.0 -Release: 0.11.%{snapshot}%{?dist} +Release: 0.11.%{snapshot}.2%{?dist} Group: System Environment/Base License: GPLv2+ URL: http://www.gnome.org/projects/NetworkManager/ @@ -28,8 +28,10 @@ Patch2: disable-editing-system-connections-for-now.patch Patch3: old-dbus-glib.patch Patch4: serial-debug.patch Patch5: explain-dns1-dns2.patch -Patch6: pk-06-fixes.patch -Patch7: preserve-f8-priorities.patch +Patch6: wpa-adhoc-fix.patch +Patch7: crypto-init.patch +Patch20: pk-06-fixes.patch +Patch21: preserve-f8-priorities.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) PreReq: chkconfig @@ -156,8 +158,10 @@ tar -xzf %{SOURCE1} %patch3 -p1 -b .old-dbus-glib %patch4 -p1 -b .serial-debug %patch5 -p1 -b .explain-dns1-dns2 -%patch6 -p1 -b .pk-06-fixes -%patch7 -p1 -b .f8-priorities +%patch6 -p1 -b .wpa-adhoc-fix +%patch7 -p1 -b .crypto-init +%patch20 -p1 -b .pk-06-fixes +%patch21 -p1 -b .f8-priorities %build autoreconf -i @@ -311,6 +315,12 @@ fi %{_datadir}/gtk-doc/html/libnm-glib/ %changelog +* Thu Sep 11 2008 Dan Williams - 1:0.7.0-0.11.svn4022.2 +- Fix hang when reading system connections from ifcfg files + +* Thu Sep 4 2008 Dan Williams - 1:0.7.0-0.11.svn4022.1 +- Fix WPA Ad-Hoc connections + * Wed Aug 27 2008 Dan Williams - 1:0.7.0-0.11.svn4022 - Fix parsing of DOMAIN in ifcfg files (rh #459370) - Fix reconnection to mobile broadband networks after an auth failure diff --git a/crypto-init.patch b/crypto-init.patch new file mode 100644 index 0000000..a8775d4 --- /dev/null +++ b/crypto-init.patch @@ -0,0 +1,61 @@ +diff -up NetworkManager-0.7.0/libnm-util/crypto_nss.c.crypto-init NetworkManager-0.7.0/libnm-util/crypto_nss.c +--- NetworkManager-0.7.0/libnm-util/crypto_nss.c.crypto-init 2008-08-22 12:14:12.000000000 -0400 ++++ NetworkManager-0.7.0/libnm-util/crypto_nss.c 2008-09-11 16:22:29.000000000 -0400 +@@ -29,27 +29,39 @@ + #include + #include + #include ++#include + + #include "crypto.h" + +-static guint32 refcount = 0; ++static gboolean initialized = FALSE; + + gboolean + crypto_init (GError **error) + { +- if (refcount == 0) { +- PR_Init(PR_USER_THREAD, PR_PRIORITY_NORMAL, 1); +- NSS_NoDB_Init (NULL); ++ SECStatus ret; ++ ++ if (initialized) ++ return TRUE; ++ ++ PR_Init(PR_USER_THREAD, PR_PRIORITY_NORMAL, 1); ++ ret = NSS_NoDB_Init (NULL); ++ if (ret != SECSuccess) { ++ PR_Cleanup (); ++ g_set_error (error, NM_CRYPTO_ERROR, ++ 0, ++ _("Failed to initialize the crypto engine: %d."), ++ PR_GetError ()); ++ return FALSE; + } +- refcount++; ++ ++ initialized = TRUE; + return TRUE; + } + + void + crypto_deinit (void) + { +- refcount--; +- if (refcount == 0) { ++ if (initialized) { + NSS_Shutdown (); + PR_Cleanup (); + } +diff -up NetworkManager-0.7.0/libnm-util/nm-utils.c.crypto-init NetworkManager-0.7.0/libnm-util/nm-utils.c +--- NetworkManager-0.7.0/libnm-util/nm-utils.c.crypto-init 2008-08-22 12:14:12.000000000 -0400 ++++ NetworkManager-0.7.0/libnm-util/nm-utils.c 2008-09-11 16:19:25.000000000 -0400 +@@ -1152,7 +1152,6 @@ nm_utils_uuid_generate_from_string (cons + + out: + g_free (uuid); +- crypto_deinit (); + return buf; + } + diff --git a/wpa-adhoc-fix.patch b/wpa-adhoc-fix.patch new file mode 100644 index 0000000..47921d7 --- /dev/null +++ b/wpa-adhoc-fix.patch @@ -0,0 +1,12 @@ +diff -up NetworkManager-0.7.0/src/supplicant-manager/nm-supplicant-settings-verify.c.foo NetworkManager-0.7.0/src/supplicant-manager/nm-supplicant-settings-verify.c +--- NetworkManager-0.7.0/src/supplicant-manager/nm-supplicant-settings-verify.c.foo 2008-09-04 13:33:24.000000000 -0400 ++++ NetworkManager-0.7.0/src/supplicant-manager/nm-supplicant-settings-verify.c 2008-09-04 13:33:32.000000000 -0400 +@@ -66,7 +66,7 @@ static const struct validate_entry valid + const char * pairwise_allowed[] = { "CCMP", "TKIP", "NONE", NULL }; + const char * group_allowed[] = { "CCMP", "TKIP", "WEP104", "WEP40", NULL }; + const char * proto_allowed[] = { "WPA", "RSN", NULL }; +-const char * key_mgmt_allowed[] = { "WPA-PSK", "WPA-EAP", "IEEE8021X", ++const char * key_mgmt_allowed[] = { "WPA-PSK", "WPA-EAP", "IEEE8021X", "WPA-NONE", + "NONE", NULL }; + const char * auth_alg_allowed[] = { "OPEN", "SHARED", "LEAP", NULL }; + const char * eap_allowed[] = { "LEAP", "MD5", "TLS", "PEAP", "TTLS", "SIM",