Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=bmf.git;a=commitdiff;h=2950e5f6ec8cfe10164977865dbbaaa26776358b

commit 2950e5f6ec8cfe10164977865dbbaaa26776358b
Author: crazy <[email protected]>
Date:   Sun Jan 24 11:24:16 2016 +0100

networkmanager-1.0.10-2-x86_64
* added fix for :
https://bugzilla.gnome.org/show_bug.cgi?id=759892
* ( NM need some work btw )

diff --git a/source/base/networkmanager/FrugalBuild 
b/source/base/networkmanager/FrugalBuild
index 670b6a4..2853205 100644
--- a/source/base/networkmanager/FrugalBuild
+++ b/source/base/networkmanager/FrugalBuild
@@ -8,19 +8,22 @@ _F_gnome_name=NetworkManager
_F_gnome_ext=.tar.xz
_F_gnome_devel="y"
pkgver=1.0.10
-pkgrel=1
+pkgrel=2
pkgdesc="Network Management daemon"
depends=('wireless_tools>=29-4' 'iproute2>=4.3.0-2' 'nss>=3.21-2' 
'libgcrypt>=1.6.4-3' \
'libnl>=3.2.9-2' 'ppp=2.4.7' 'wpa_supplicant>=2.5-3' 'iptables' 
'polkit>=0.113-3' 'ca-certificates' \
'modemmanager>=1.4.12-2' 'libarchive>=3.0.3-2' 'dbus-glib>=0.104-2' 
'libndp>=1.5-4' 'newt>=0.52.18-2')
-makedepends=('perl-xml-parser' 'intltool' 'gobject-introspection' 'dhcpcd' 
'dhclient' 'ppp>=2.4.7-2')
+makedepends=('perl-xml-parser' 'intltool' 'gobject-introspection' 'dhcpcd' 
'dhclient>=4.3.3' 'ppp>=2.4.7-2')
rodepends=('mobile-broadband-provider-info') ## some 4G modems won't work 
without
groups=('base')
archs=('i686' 'x86_64' 'arm')
+_F_gnome_devel="n"
Finclude gnome
+source=($source bug759892-fix.patch)
options+=('scriptlet')
backup=('etc/NetworkManager/NetworkManager.conf')
-sha1sums=('1c199fdfb9fff9e7f540d51952699ce815a12369')
+sha1sums=('1c199fdfb9fff9e7f540d51952699ce815a12369' \
+          '3629bf62a95bf2b8bbf0b0c4cfee8ca93f65630b')
_F_cd_path=$_F_gnome_name-$pkgver
replaces=('nm-openconnect')

diff --git a/source/base/networkmanager/bug759892-fix.patch 
b/source/base/networkmanager/bug759892-fix.patch
new file mode 100644
index 0000000..b7c2be6
--- /dev/null
+++ b/source/base/networkmanager/bug759892-fix.patch
@@ -0,0 +1,51 @@
+From 11aa07ed939193e85516c287a57dee1837242972 Mon Sep 17 00:00:00 2001
+From: Thomas Haller <[email protected]>
+Date: Mon, 4 Jan 2016 18:54:26 +0100
+Subject: core: fix failure to configure routes due to wrong device-route for
+ IPv4 peer-addresses
+
+As in the case of a OpenVPN connection, we might add an address like:
+  10.8.0.58/32 ptp 10.8.0.57
+
+In this case, kernel would automatically add a device-route like:
+  10.8.0.57/32 via 0.0.0.0 dev 32 metric 0 mss 0 src rtprot-kernel scope link 
pref-src 10.8.0.58
+
+nm_ip4_config_commit() checks all IP addresses to figure out
+the present device-routes. Then the routes are synced by NMRouteManager.
+Due to a bug, we would not consider the peer-address, but the local-address
+and configure a route 10.8.0.58/32, instead of 10.8.0.57/32.
+
+That stays mostly unnoticed, because usually the peer and the local-address are
+in the same subnet, so that there is no difference (/32 is an example of the
+peer-address being in a different subnet).
+
+It also seems that due to a bug fixed by df4e5357521 this issue didn't surface.
+Probably because we would not notice the 10.8.0.57/32 right away and thus
+nm_route_manager_ip4_route_sync() would not wrongly delete it.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=759892
+
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809195
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809494
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809526
+https://bugs.archlinux.org/task/47535
+https://bugzilla.redhat.com/show_bug.cgi?id=1294309
+https://mail.gnome.org/archives/networkmanager-list/2015-December/msg00059.html
+
+diff --git a/src/nm-ip4-config.c b/src/nm-ip4-config.c
+index f625d35..61e29af 100644
+--- a/src/nm-ip4-config.c
++++ b/src/nm-ip4-config.c
+@@ -298,7 +298,8 @@ nm_ip4_config_commit (const NMIP4Config *config, int 
ifindex, gboolean routes_fu
+
+                               route.ifindex = ifindex;
+                               route.source = NM_IP_CONFIG_SOURCE_KERNEL;
+-                              route.network = 
nm_utils_ip4_address_clear_host_address (addr->address, addr->plen);
++                              route.network = 
nm_utils_ip4_address_clear_host_address (addr->peer_address ? : addr->address,
++                                                                              
         addr->plen);
+                               route.plen = addr->plen;
+                               route.pref_src = addr->address;
+                               route.metric = default_route_metric;
+--
+cgit v0.10.2
+
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to