diff --git a/NetworkManager-0.7.0.99-fix-hal-resync.patch b/NetworkManager-0.7.0.99-fix-hal-resync.patch deleted file mode 100644 index 12ca88f..0000000 --- a/NetworkManager-0.7.0.99-fix-hal-resync.patch +++ /dev/null @@ -1,47 +0,0 @@ -commit 21defe6d73853bf19c6ce99d07701d1531e09409 -Author: Drew Moseley -Date: Fri Mar 6 17:19:17 2009 -0500 - - core: fix use-after-free caused by incorrect HAL device resync code - -diff --git a/src/nm-manager.c b/src/nm-manager.c -index a6bac55..d0e5564 100644 ---- a/src/nm-manager.c -+++ b/src/nm-manager.c -@@ -1426,12 +1426,11 @@ static void - sync_devices (NMManager *self) - { - NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (self); -- GSList *devices; -+ GSList *devices = NULL; - GSList *iter; - -- /* Remove devices which are no longer known to HAL */ -- devices = g_slist_copy (priv->devices); -- for (iter = devices; iter; iter = iter->next) { -+ /* Keep devices still known to HAL; get rid of ones HAL no longer knows about */ -+ for (iter = priv->devices; iter; iter = iter->next) { - NMDevice *device = NM_DEVICE (iter->data); - const char *udi = nm_device_get_udi (device); - -@@ -1440,15 +1439,14 @@ sync_devices (NMManager *self) - nm_device_set_managed (device, TRUE, NM_DEVICE_STATE_REASON_NOW_MANAGED); - else - nm_device_set_managed (device, FALSE, NM_DEVICE_STATE_REASON_NOW_UNMANAGED); -- } else { -- priv->devices = g_slist_delete_link (priv->devices, iter); -+ devices = g_slist_prepend (devices, device); -+ } else - remove_one_device (self, device); -- } - } -+ g_slist_free (priv->devices); -+ priv->devices = devices; - -- g_slist_free (devices); -- -- /* Get any new ones */ -+ /* Ask HAL for new devices */ - nm_hal_manager_query_devices (priv->hal_mgr); - } - diff --git a/NetworkManager-0.7.1-localhost-localdomain.patch b/NetworkManager-0.7.1-localhost-localdomain.patch deleted file mode 100644 index ff03da2..0000000 --- a/NetworkManager-0.7.1-localhost-localdomain.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -up NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/plugin.c.keep-localhost-localdomain NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/plugin.c ---- NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/plugin.c.keep-localhost-localdomain 2009-03-03 20:13:20.000000000 -0500 -+++ NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/plugin.c 2009-03-05 05:59:54.000000000 -0500 -@@ -488,15 +488,6 @@ plugin_get_hostname (SCPluginIfcfg *plug - - hostname = svGetValue (network, "HOSTNAME", FALSE); - svCloseFile (network); -- -- /* Ignore a hostname of 'localhost' or 'localhost.localdomain' to preserve -- * 'network' service behavior. -- */ -- if (hostname && (!strcmp (hostname, "localhost") || !strcmp (hostname, "localhost.localdomain"))) { -- g_free (hostname); -- hostname = NULL; -- } -- - return hostname; - } - diff --git a/NetworkManager.spec b/NetworkManager.spec index 040c776..4ba1143 100644 --- a/NetworkManager.spec +++ b/NetworkManager.spec @@ -11,14 +11,14 @@ ExcludeArch: s390 s390x %define libnl_version 1.1 %define ppp_version 2.2.4 -%define snapshot %{nil} -%define applet_snapshot %{nil} +%define snapshot .git20090324 +%define applet_snapshot .svn1233 Name: NetworkManager Summary: Network connection manager and user applications Epoch: 1 Version: 0.7.0.99 -Release: 3%{snapshot}%{?dist} +Release: 4%{snapshot}%{?dist} Group: System Environment/Base License: GPLv2+ URL: http://www.gnome.org/projects/NetworkManager/ @@ -28,10 +28,8 @@ Source1: network-manager-applet-%{version}%{applet_snapshot}.tar.bz2 Source2: nm-system-settings.conf Patch1: nm-applet-internal-buildfixes.patch Patch2: explain-dns1-dns2.patch -Patch3: NetworkManager-0.7.1-localhost-localdomain.patch -Patch4: NetworkManager-0.7.0.99-fix-hal-resync.patch -Patch5: missing-onboot-equals-yes.patch -Patch10: old-dbus-glib.patch +Patch10: revert-onboot-no-for-minimal.patch +Patch20: old-dbus-glib.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) PreReq: chkconfig @@ -151,10 +149,8 @@ NetworkManager functionality from applications that use glib. tar -xjf %{SOURCE1} %patch1 -p1 -b .buildfix %patch2 -p1 -b .explain-dns1-dns2 -%patch3 -p1 -b .keep-localhost-localdomain -%patch4 -p1 -b .fix-hal-resync -%patch5 -p1 -b .missing-onboot -%patch10 -p1 -b .old-dbus-glib +%patch10 -p1 -b .ignore-onboot-for-minimal +%patch20 -p1 -b .old-dbus-glib %build @@ -338,6 +334,20 @@ fi %{_datadir}/gtk-doc/html/libnm-util/* %changelog +* Tue Mar 24 2009 Dan Williams - 1:0.7.0.99-4 +- nm: fix communication with Option GT Max 3.6 mobile broadband cards +- nm: fix communication with Huawei mobile broadband cards (rh #487663) +- nm: don't look up hostname when HOSTNAME=localhost unless asked (rh #490184) +- nm: fix crash during IP4 configuration (rh #491620) +- nm: ignore ONBOOT=no for minimal ifcfg files (f9 & f10 only) (rh #489398) +- applet: updated translations + +* Wed Mar 18 2009 Dan Williams - 1:0.7.0.99-3.5 +- nm: work around unhandled device removals due to missing HAL events (rh #484530) +- nm: improve handling of multiple modem ports +- nm: support for Sony Ericsson F3507g / MD300 and Dell 5530 +- applet: updated translations + * Mon Mar 9 2009 Dan Williams - 1:0.7.0.99-3 - Missing ONBOOT should actually mean ONBOOT=yes (rh #489422) diff --git a/missing-onboot-equals-yes.patch b/missing-onboot-equals-yes.patch deleted file mode 100644 index ca17b7e..0000000 --- a/missing-onboot-equals-yes.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c.ignore-minimal NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c ---- NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c.ignore-minimal 2009-03-09 23:02:38.000000000 -0400 -+++ NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c 2009-03-09 23:22:57.000000000 -0400 -@@ -132,9 +132,9 @@ make_connection_setting (const char *fil - NULL); - g_free (uuid); - -- /* Be somewhat conservative about autoconnect */ -+ /* Missing ONBOOT is treated as "ONBOOT=true" by the old network service */ - g_object_set (s_con, NM_SETTING_CONNECTION_AUTOCONNECT, -- svTrueValue (ifcfg, "ONBOOT", FALSE), -+ svTrueValue (ifcfg, "ONBOOT", TRUE), - NULL); - - value = svGetValue (ifcfg, "LAST_CONNECT", FALSE); diff --git a/revert-onboot-no-for-minimal.patch b/revert-onboot-no-for-minimal.patch new file mode 100644 index 0000000..7beaf78 --- /dev/null +++ b/revert-onboot-no-for-minimal.patch @@ -0,0 +1,55 @@ +diff -up NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c.foo NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c +--- NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c.foo 2009-03-18 13:43:30.000000000 -0400 ++++ NetworkManager-0.7.0.99/system-settings/plugins/ifcfg-rh/reader.c 2009-03-18 13:49:34.000000000 -0400 +@@ -197,7 +197,7 @@ get_one_ip4_addr (shvarFile *ifcfg, + + + static NMSetting * +-make_ip4_setting (shvarFile *ifcfg, const char *network_file, GError **error) ++make_ip4_setting (shvarFile *ifcfg, const char *network_file, gboolean *minimal, GError **error) + { + NMSettingIP4Config *s_ip4 = NULL; + char *value = NULL; +@@ -253,8 +253,13 @@ make_ip4_setting (shvarFile *ifcfg, cons + tmp_ip4 = svGetValue (ifcfg, "IPADDR", FALSE); + tmp_prefix = svGetValue (ifcfg, "PREFIX", FALSE); + tmp_netmask = svGetValue (ifcfg, "NETMASK", FALSE); +- if (!tmp_ip4 && !tmp_prefix && !tmp_netmask) ++ if (!tmp_ip4 && !tmp_prefix && !tmp_netmask) { + method = NM_SETTING_IP4_CONFIG_METHOD_AUTO; ++ value = svGetValue (ifcfg, "ONBOOT", FALSE); ++ if (value && !svTrueValue (ifcfg, "ONBOOT", TRUE)) ++ *minimal = TRUE; ++ g_free (value); ++ } + g_free (tmp_ip4); + g_free (tmp_prefix); + g_free (tmp_netmask); +@@ -1247,6 +1252,7 @@ connection_from_file (const char *filena + char *nmc = NULL; + NMSetting *s_ip4; + char *ifcfg_name = NULL; ++ gboolean minimal = FALSE; + + g_return_val_if_fail (filename != NULL, NULL); + g_return_val_if_fail (ignored != NULL, NULL); +@@ -1345,7 +1351,7 @@ connection_from_file (const char *filena + if (!connection || *ignored) + goto done; + +- s_ip4 = make_ip4_setting (parsed, network_file, error); ++ s_ip4 = make_ip4_setting (parsed, network_file, &minimal, error); + if (*error) { + g_object_unref (connection); + connection = NULL; +@@ -1354,6 +1360,10 @@ connection_from_file (const char *filena + nm_connection_add_setting (connection, s_ip4); + } + ++ s_con = (NMSettingConnection *) nm_connection_get_setting (connection, NM_TYPE_SETTING_CONNECTION); ++ if (s_con && minimal) ++ g_object_set (s_con, NM_SETTING_CONNECTION_AUTOCONNECT, TRUE, NULL); ++ + if (!nm_connection_verify (connection, error)) { + g_object_unref (connection); + connection = NULL; diff --git a/sources b/sources index a8827dd..5a674f8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -2f3aef00a0cd1a2d32acba880bcca27c NetworkManager-0.7.0.99.tar.bz2 -8670d75dffe0d4fe5a497f0857a5ff00 network-manager-applet-0.7.0.99.tar.bz2 +d056611fcbe1520fa520f9057d810be8 NetworkManager-0.7.0.99.git20090324.tar.bz2 +4bd79f75d5672302acc42fe01135c858 network-manager-applet-0.7.0.99.svn1233.tar.bz2