Bug#910628: stretch-pu: package network-manager/1.6.2-3+deb9u1

2018-10-21 Thread Adam D. Barratt
Control: tags -1 + confirmed

On Tue, 2018-10-09 at 00:42 +0200, Michael Biebl wrote:
> I'd like to make a stable upload for network-manager, fixing a bug in
> libnm0 when trying to access enabled and metered properties.
> 
> This fix was specifically requested by downstreams like Linux Mint
> which
> use that functionality in their Cinnamon desktop.
> 

Please go ahead.

Regards,

Adam



Bug#910628: stretch-pu: package network-manager/1.6.2-3+deb9u1

2018-10-08 Thread Michael Biebl
Package: release.debian.org
Severity: normal
Tags: stretch
User: release.debian@packages.debian.org
Usertags: pu

Hi,

I'd like to make a stable upload for network-manager, fixing a bug in
libnm0 when trying to access enabled and metered properties.

This fix was specifically requested by downstreams like Linux Mint which
use that functionality in their Cinnamon desktop.

The patch is cherry-picked from upstream and already fixed in
buster/sid.

Thanks for considering,
Michael

-- System Information:
Debian Release: buster/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.18.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), 
LANGUAGE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
diff --git a/debian/changelog b/debian/changelog
index e93e0910e..ebb876f17 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+network-manager (1.6.2-3+deb9u1) stretch; urgency=medium
+
+  * libnm: Fix accessing enabled and metered properties.
+Those properties were proxied to the wrong object leading to a crash of
+clients using libnm. (Closes: #892998)
+
+ -- Michael Biebl   Tue, 09 Oct 2018 00:40:45 +0200
+
 network-manager (1.6.2-3) unstable; urgency=medium
 
   * device/wifi: block autoconnect while scanning is in progress.
diff --git a/debian/gbp.conf b/debian/gbp.conf
index 478d845ce..55b2a3d65 100644
--- a/debian/gbp.conf
+++ b/debian/gbp.conf
@@ -1,4 +1,4 @@
 [DEFAULT]
 pristine-tar = True
 patch-numbers = False
-debian-branch = master
+debian-branch = stretch
diff --git 
a/debian/patches/libnm-client-proxy-_enabled-and-metered-properties-to-the.patch
 
b/debian/patches/libnm-client-proxy-_enabled-and-metered-properties-to-the.patch
new file mode 100644
index 0..5287b860f
--- /dev/null
+++ 
b/debian/patches/libnm-client-proxy-_enabled-and-metered-properties-to-the.patch
@@ -0,0 +1,54 @@
+From: Lubomir Rintel 
+Date: Wed, 1 Nov 2017 21:29:39 +0100
+Subject: libnm/client: proxy *_enabled and metered properties to the right
+ object
+
+They're provided by the Manager, not by the RemoteSettings.
+
+(cherry picked from commit c81005b84650b8e6d709ce6afda96fb55987cdb8)
+(cherry picked from commit 34035ceee8e75d8cb7deb6f4aa211067bddcfe97)
+(cherry picked from commit b2af5f7ab676675a496adfa08541ecca43a9d9f8)
+---
+ libnm/nm-client.c | 8 
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/libnm/nm-client.c b/libnm/nm-client.c
+index 63eaa84..ba13347 100644
+--- a/libnm/nm-client.c
 b/libnm/nm-client.c
+@@ -2616,7 +2616,7 @@ get_property (GObject *object, guint prop_id,
+   break;
+   case PROP_WIRELESS_HARDWARE_ENABLED:
+   if (priv->manager)
+-  g_object_get_property (G_OBJECT (priv->settings), 
pspec->name, value);
++  g_object_get_property (G_OBJECT (priv->manager), 
pspec->name, value);
+   else
+   g_value_set_boolean (value, FALSE);
+   break;
+@@ -2625,7 +2625,7 @@ get_property (GObject *object, guint prop_id,
+   break;
+   case PROP_WWAN_HARDWARE_ENABLED:
+   if (priv->manager)
+-  g_object_get_property (G_OBJECT (priv->settings), 
pspec->name, value);
++  g_object_get_property (G_OBJECT (priv->manager), 
pspec->name, value);
+   else
+   g_value_set_boolean (value, FALSE);
+   break;
+@@ -2634,7 +2634,7 @@ get_property (GObject *object, guint prop_id,
+   break;
+   case PROP_WIMAX_HARDWARE_ENABLED:
+   if (priv->manager)
+-  g_object_get_property (G_OBJECT (priv->settings), 
pspec->name, value);
++  g_object_get_property (G_OBJECT (priv->manager), 
pspec->name, value);
+   else
+   g_value_set_boolean (value, FALSE);
+   break;
+@@ -2655,7 +2655,7 @@ get_property (GObject *object, guint prop_id,
+   break;
+   case PROP_METERED:
+   if (priv->manager)
+-  g_object_get_property (G_OBJECT (priv->settings), 
pspec->name, value);
++  g_object_get_property (G_OBJECT (priv->manager), 
pspec->name, value);
+   else
+   g_value_set_uint (value, NM_METERED_UNKNOWN);
+   break;
diff --git a/debian/patches/series b/debian/patches/series
index 7df065a43..e5e2cccd9 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -20,3 +20,4 @@ 
wifi-also-show-the-NM-D-Bus-path-for-the-Wi-Fi-AP-in-nm_w.patch
 device-separately-handle-NMDevice-s-autoconnect-by-user-a.patch
 device-add-get_autoconnect_allowed-virtual-function.patch
 device-wifi-block-autoconnect-while-scanning-is-in-progre.patch