summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAron Xu <aron@debian.org>2016-09-12 06:02:16 (GMT)
committerAron Xu <aron@debian.org>2016-09-12 06:18:27 (GMT)
commit38a52be23a88226fc255332d6d1bd2b440bc8b5b (patch)
tree78ff1747912801ac6d34fba5864c2a50b599b458
parentccc0b8aecf93a864e3a84b1fba6c541f45519c99 (diff)
Update patches for new upstream release
-rw-r--r--debian/patches/Add-new-NMSettingsConnection-reset_retries-get-set-m.patch14
-rw-r--r--debian/patches/Don-t-block-network.target-on-NetworkManager-wait-on.patch54
-rw-r--r--debian/patches/Don-t-make-NetworkManager-D-Bus-activatable.patch4
-rw-r--r--debian/patches/Don-t-setup-Sleep-Monitor-if-not-booted-with-systemd.patch28
-rw-r--r--debian/patches/Filter-DNS-servers-to-add-to-dnsmasq-based-on-availa.patch82
-rw-r--r--debian/patches/Force-online-state-with-unmanaged-devices.patch18
-rw-r--r--debian/patches/Ignore-p2p0-wifi-devices-from-android.patch4
-rw-r--r--debian/patches/Ignore-rmnet_usbX-devices.patch4
-rw-r--r--debian/patches/Let-NetworkManager-read-oFono-settings-file-and-crea.patch6
-rw-r--r--debian/patches/Order-IPv6-nameservers-before-IPv4-for-dns-plugins-d.patch42
-rw-r--r--debian/patches/Read-config-from-run.patch4
-rw-r--r--debian/patches/Read-system-connections-from-run.patch2
-rw-r--r--debian/patches/Replace-Ad-Hoc-WPA-None-support-with-IBSS-RSN-PSK.patch8
-rw-r--r--debian/patches/Revert-wifi-disable-Ad-Hoc-WPA-connections-lp-905748.patch16
-rw-r--r--debian/patches/Track-killswitch-change-signals-from-urfkill.patch89
-rw-r--r--debian/patches/Update-dnsmasq-parameters.patch14
-rw-r--r--debian/patches/cli-initialize-connection-list-in-do_device_connect.patch28
-rw-r--r--debian/patches/dns-manager-don-t-merge-split-DNS-search-domains.patch97
-rw-r--r--debian/patches/libnm-Check-self-still-NMManager-or-not.patch4
-rw-r--r--debian/patches/libnm-don-t-require-initialized-out_encrypted-argume.patch31
-rw-r--r--debian/patches/series10
-rw-r--r--debian/patches/systemd-Don-t-enable-NetworkManager-wait-online.serv.patch30
-rw-r--r--debian/patches/wifi-Signal-on-the-wifi-device-when-its-supplicant-i.patch8
-rw-r--r--debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-exits.patch29
-rw-r--r--debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-goes-INACTIV.patch31
-rw-r--r--debian/patches/wwan-add-support-for-using-oFono-as-a-modem-manager.patch10
26 files changed, 247 insertions, 420 deletions
diff --git a/debian/patches/Add-new-NMSettingsConnection-reset_retries-get-set-m.patch b/debian/patches/Add-new-NMSettingsConnection-reset_retries-get-set-m.patch
index 3fc4826..3a7a968 100644
--- a/debian/patches/Add-new-NMSettingsConnection-reset_retries-get-set-m.patch
+++ b/debian/patches/Add-new-NMSettingsConnection-reset_retries-get-set-m.patch
@@ -13,10 +13,10 @@ Bug: https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1461593
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/src/settings/nm-settings-connection.c b/src/settings/nm-settings-connection.c
-index 6bed3fe..fa2b573 100644
+index 5b3a399..fc91ef5 100644
--- a/src/settings/nm-settings-connection.c
+++ b/src/settings/nm-settings-connection.c
-@@ -125,6 +125,7 @@ typedef struct {
+@@ -124,6 +124,7 @@ typedef struct {
int autoconnect_retries;
gint32 autoconnect_retry_time;
@@ -24,7 +24,7 @@ index 6bed3fe..fa2b573 100644
NMDeviceStateReason autoconnect_blocked_reason;
char *filename;
-@@ -2407,7 +2408,8 @@ nm_settings_connection_set_autoconnect_retries (NMSettingsConnection *self,
+@@ -2402,7 +2403,8 @@ nm_settings_connection_set_autoconnect_retries (NMSettingsConnection *self,
if (retries)
priv->autoconnect_retry_time = 0;
else
@@ -34,7 +34,7 @@ index 6bed3fe..fa2b573 100644
}
void
-@@ -2416,6 +2418,19 @@ nm_settings_connection_reset_autoconnect_retries (NMSettingsConnection *self)
+@@ -2411,6 +2413,19 @@ nm_settings_connection_reset_autoconnect_retries (NMSettingsConnection *self)
nm_settings_connection_set_autoconnect_retries (self, AUTOCONNECT_RETRIES_DEFAULT);
}
@@ -54,16 +54,16 @@ index 6bed3fe..fa2b573 100644
gint32
nm_settings_connection_get_autoconnect_retry_time (NMSettingsConnection *self)
{
-@@ -2580,6 +2595,7 @@ nm_settings_connection_init (NMSettingsConnection *self)
+@@ -2575,6 +2590,7 @@ nm_settings_connection_init (NMSettingsConnection *self)
priv->autoconnect_retries = AUTOCONNECT_RETRIES_DEFAULT;
priv->autoconnect_blocked_reason = NM_DEVICE_STATE_REASON_NONE;
+ priv->reset_retries_timeout = AUTOCONNECT_RESET_RETRIES_TIMER;
g_signal_connect (self, NM_CONNECTION_SECRETS_CLEARED, G_CALLBACK (secrets_cleared_cb), NULL);
- g_signal_connect (self, NM_CONNECTION_CHANGED, G_CALLBACK (changed_cb), GUINT_TO_POINTER (TRUE));
+ g_signal_connect (self, NM_CONNECTION_CHANGED, G_CALLBACK (connection_changed_cb), NULL);
diff --git a/src/settings/nm-settings-connection.h b/src/settings/nm-settings-connection.h
-index 5c12a8a..ece530a 100644
+index c45505d..46a90f5 100644
--- a/src/settings/nm-settings-connection.h
+++ b/src/settings/nm-settings-connection.h
@@ -208,6 +208,9 @@ void nm_settings_connection_set_autoconnect_retries (NMSettingsConnection *self,
diff --git a/debian/patches/Don-t-block-network.target-on-NetworkManager-wait-on.patch b/debian/patches/Don-t-block-network.target-on-NetworkManager-wait-on.patch
deleted file mode 100644
index 4ee2e37..0000000
--- a/debian/patches/Don-t-block-network.target-on-NetworkManager-wait-on.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From: Michael Biebl <biebl@debian.org>
-Date: Sun, 29 Mar 2015 22:58:43 +0200
-Subject: Don't block network.target on NetworkManager-wait-online.service
-
-network.target is supposed to be a passive unit which is pulled in my
-the network management service.
-
-Also, we want NetworkManager-wait-online.service be hooked up in
-network-online.target, not multi-user.target.
-
-While at it, add a few other smaller fixes, like the addition of
-Documentation= and RemainAfterExit=yes
-
-http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/
-https://bugzilla.gnome.org/show_bug.cgi?id=746039
----
- data/Makefile.am | 4 ----
- data/NetworkManager-wait-online.service.in | 2 ++
- 2 files changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/data/Makefile.am b/data/Makefile.am
-index 4ab4106..bbe6b32 100644
---- a/data/Makefile.am
-+++ b/data/Makefile.am
-@@ -18,10 +18,6 @@ endif
-
- NetworkManager-dispatcher.service: NetworkManager-dispatcher.service.in
- $(edit) $< >$@
--
--install-exec-local:
-- install -d $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
-- ln -sf $(systemdsystemunitdir)/NetworkManager-wait-online.service $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
- endif
-
- examplesdir = $(docdir)/examples
-diff --git a/data/NetworkManager-wait-online.service.in b/data/NetworkManager-wait-online.service.in
-index 8c4fa67..1753d20 100644
---- a/data/NetworkManager-wait-online.service.in
-+++ b/data/NetworkManager-wait-online.service.in
-@@ -1,5 +1,6 @@
- [Unit]
- Description=Network Manager Wait Online
-+Documentation=man:nm-online(1)
- Requisite=NetworkManager.service
- After=NetworkManager.service
- Before=network-online.target
-@@ -7,6 +8,7 @@ Before=network-online.target
- [Service]
- Type=oneshot
- ExecStart=@bindir@/nm-online -s -q --timeout=30
-+RemainAfterExit=yes
-
- [Install]
- WantedBy=network-online.target
diff --git a/debian/patches/Don-t-make-NetworkManager-D-Bus-activatable.patch b/debian/patches/Don-t-make-NetworkManager-D-Bus-activatable.patch
index 967d247..4ef2fc4 100644
--- a/debian/patches/Don-t-make-NetworkManager-D-Bus-activatable.patch
+++ b/debian/patches/Don-t-make-NetworkManager-D-Bus-activatable.patch
@@ -28,10 +28,10 @@ index ce059fc..4ab4106 100644
install -d $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
ln -sf $(systemdsystemunitdir)/NetworkManager-wait-online.service $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
diff --git a/data/NetworkManager.service.in b/data/NetworkManager.service.in
-index 7946ac1..eaab677 100644
+index 95128a6..7a4cede 100644
--- a/data/NetworkManager.service.in
+++ b/data/NetworkManager.service.in
-@@ -18,6 +18,5 @@ ProtectHome=read-only
+@@ -20,6 +20,5 @@ ProtectHome=read-only
[Install]
WantedBy=multi-user.target
diff --git a/debian/patches/Don-t-setup-Sleep-Monitor-if-not-booted-with-systemd.patch b/debian/patches/Don-t-setup-Sleep-Monitor-if-not-booted-with-systemd.patch
index 971b042..f190e32 100644
--- a/debian/patches/Don-t-setup-Sleep-Monitor-if-not-booted-with-systemd.patch
+++ b/debian/patches/Don-t-setup-Sleep-Monitor-if-not-booted-with-systemd.patch
@@ -12,13 +12,13 @@ systemd.
Closes: #742933
---
- configure.ac | 3 ++-
- src/Makefile.am | 2 ++
- src/nm-sleep-monitor-systemd.c | 5 +++++
+ configure.ac | 3 ++-
+ src/Makefile.am | 2 ++
+ src/nm-sleep-monitor.c | 5 +++++
3 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
-index 7bb3779..93adf26 100644
+index 4c56e14..a47f09e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -474,8 +474,9 @@ fi
@@ -33,10 +33,10 @@ index 7bb3779..93adf26 100644
;;
consolekit)
diff --git a/src/Makefile.am b/src/Makefile.am
-index aa35eef..2495bbc 100644
+index 48af5a0..b4fc16d 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
-@@ -482,6 +482,7 @@ AM_CPPFLAGS += \
+@@ -474,6 +474,7 @@ AM_CPPFLAGS += \
$(SELINUX_CFLAGS) \
$(LIBAUDIT_CFLAGS) \
$(SYSTEMD_LOGIN_CFLAGS) \
@@ -44,7 +44,7 @@ index aa35eef..2495bbc 100644
$(SYSTEMD_JOURNAL_CFLAGS) \
$(SYSTEMD_NM_CFLAGS_PATHS) \
\
-@@ -515,6 +516,7 @@ libNetworkManager_la_LIBADD = \
+@@ -507,6 +508,7 @@ libNetworkManager_la_LIBADD = \
$(GUDEV_LIBS) \
$(LIBNL_LIBS) \
$(SYSTEMD_LOGIN_LIBS) \
@@ -52,11 +52,11 @@ index aa35eef..2495bbc 100644
$(SYSTEMD_JOURNAL_LIBS) \
$(LIBNDP_LIBS) \
$(LIBDL) \
-diff --git a/src/nm-sleep-monitor-systemd.c b/src/nm-sleep-monitor-systemd.c
-index 064a703..d42c0fe 100644
---- a/src/nm-sleep-monitor-systemd.c
-+++ b/src/nm-sleep-monitor-systemd.c
-@@ -23,6 +23,7 @@
+diff --git a/src/nm-sleep-monitor.c b/src/nm-sleep-monitor.c
+index 13ce1be..561e503 100644
+--- a/src/nm-sleep-monitor.c
++++ b/src/nm-sleep-monitor.c
+@@ -25,6 +25,7 @@
#include <string.h>
#include <sys/stat.h>
#include <gio/gunixfdlist.h>
@@ -64,7 +64,7 @@ index 064a703..d42c0fe 100644
#include "nm-core-internal.h"
#include "NetworkManagerUtils.h"
-@@ -203,6 +204,10 @@ on_proxy_acquired (GObject *object,
+@@ -340,6 +341,10 @@ on_proxy_acquired (GObject *object,
static void
nm_sleep_monitor_init (NMSleepMonitor *self)
{
@@ -73,5 +73,5 @@ index 064a703..d42c0fe 100644
+ return;
+ }
self->inhibit_fd = -1;
+ self->cancellable = g_cancellable_new ();
g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
- G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START |
diff --git a/debian/patches/Filter-DNS-servers-to-add-to-dnsmasq-based-on-availa.patch b/debian/patches/Filter-DNS-servers-to-add-to-dnsmasq-based-on-availa.patch
deleted file mode 100644
index fae01f9..0000000
--- a/debian/patches/Filter-DNS-servers-to-add-to-dnsmasq-based-on-availa.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
-Date: Fri, 13 May 2016 11:00:11 +0800
-Subject: Filter DNS servers to add to dnsmasq based on availability and VPN
- status
-
----
- src/dns-manager/nm-dns-dnsmasq.c | 47 +++++++++++++++++++++++++++++++++-------
- 1 file changed, 39 insertions(+), 8 deletions(-)
-
-diff --git a/src/dns-manager/nm-dns-dnsmasq.c b/src/dns-manager/nm-dns-dnsmasq.c
-index 951572c..b10ffb3 100644
---- a/src/dns-manager/nm-dns-dnsmasq.c
-+++ b/src/dns-manager/nm-dns-dnsmasq.c
-@@ -439,6 +439,8 @@ update (NMDnsPlugin *plugin,
- NMDnsDnsmasqPrivate *priv = NM_DNS_DNSMASQ_GET_PRIVATE (self);
- const GSList *iter;
- GVariantBuilder servers;
-+ GSList *vpn_configs_copy;
-+ gboolean might_default = FALSE;
-
- start_dnsmasq (self);
-
-@@ -447,22 +449,51 @@ update (NMDnsPlugin *plugin,
- if (global_config)
- add_global_config (self, &servers, global_config);
- else {
-- /* Use split DNS for VPN configs */
-- for (iter = vpn_configs; iter; iter = g_slist_next (iter)) {
-+ /* Work on a copy of the vpn_configs list because we might want to remove
-+ * some items from it, yet not affect other DNS plugins that might run
-+ */
-+ vpn_configs_copy = g_slist_copy ((GSList *) vpn_configs);
-+
-+ /* Look for a VPN config that is set to get a default route, and if
-+ * there is one, install it *without* splitting into per-domain servers.
-+ */
-+ for (iter = (GSList *) vpn_configs_copy; iter; iter = g_slist_next (iter)) {
- if (NM_IS_IP4_CONFIG (iter->data))
-- add_ip4_config (self, &servers, iter->data, TRUE);
-+ might_default = !nm_ip4_config_get_never_default (iter->data);
- else if (NM_IS_IP6_CONFIG (iter->data))
-- add_ip6_config (self, &servers, iter->data, TRUE);
-+ might_default = !nm_ip6_config_get_never_default (iter->data);
-+ if (might_default) {
-+ if (NM_IS_IP4_CONFIG (iter->data))
-+ add_ip4_config (self, &servers, iter->data, FALSE);
-+ else if (NM_IS_IP6_CONFIG (iter->data))
-+ add_ip6_config (self, &servers, iter->data, FALSE);
-+ vpn_configs_copy = g_slist_remove (vpn_configs_copy, iter->data);
-+ break;
-+ }
- }
-
-- /* Now add interface configs without split DNS */
-- for (iter = dev_configs; iter; iter = g_slist_next (iter)) {
-+ /* Use split DNS for remaining VPN configs */
-+ for (iter = (GSList *) vpn_configs_copy; iter; iter = g_slist_next (iter)) {
- if (NM_IS_IP4_CONFIG (iter->data))
-- add_ip4_config (self, &servers, iter->data, FALSE);
-+ add_ip4_config (self, &servers, iter->data, TRUE);
- else if (NM_IS_IP6_CONFIG (iter->data))
-- add_ip6_config (self, &servers, iter->data, FALSE);
-+ add_ip6_config (self, &servers, iter->data, TRUE);
- }
-
-+ /* Now add interface configs without split DNS, unless some VPN
-+ * grabs the default route (in which case we should not install them
-+ * at all, since even split DNS may fail, if the local subnet defines
-+ * its domain as being the same domain as what the "default" VPN provides.
-+ */
-+ if (!might_default) {
-+ for (iter = (GSList *) dev_configs; iter; iter = g_slist_next (iter)) {
-+ if (NM_IS_IP4_CONFIG (iter->data))
-+ add_ip4_config (self, &servers, iter->data, FALSE);
-+ else if (NM_IS_IP6_CONFIG (iter->data))
-+ add_ip6_config (self, &servers, iter->data, FALSE);
-+ }
-+ }
-+
- /* And any other random configs */
- for (iter = other_configs; iter; iter = g_slist_next (iter)) {
- if (NM_IS_IP4_CONFIG (iter->data))
diff --git a/debian/patches/Force-online-state-with-unmanaged-devices.patch b/debian/patches/Force-online-state-with-unmanaged-devices.patch
index d7f445a..66cce38 100644
--- a/debian/patches/Force-online-state-with-unmanaged-devices.patch
+++ b/debian/patches/Force-online-state-with-unmanaged-devices.patch
@@ -12,10 +12,10 @@ Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=512286
1 file changed, 120 insertions(+)
diff --git a/src/nm-manager.c b/src/nm-manager.c
-index e64c68a..10aa3d7 100644
+index 8277f6b..9ab54b3 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
-@@ -57,6 +57,8 @@
+@@ -58,6 +58,8 @@
#include "nmdbus-manager.h"
#include "nmdbus-device.h"
@@ -24,7 +24,7 @@ index e64c68a..10aa3d7 100644
static gboolean add_device (NMManager *self, NMDevice *device, GError **error);
static NMActiveConnection *_new_active_connection (NMManager *self,
-@@ -137,6 +139,10 @@ typedef struct {
+@@ -139,6 +141,10 @@ typedef struct {
GFileMonitor *fw_monitor;
guint fw_changed_id;
@@ -35,7 +35,7 @@ index e64c68a..10aa3d7 100644
guint timestamp_update_id;
gboolean startup;
-@@ -687,6 +693,29 @@ find_best_device_state (NMManager *manager)
+@@ -787,6 +793,29 @@ find_best_device_state (NMManager *manager)
return best_state;
}
@@ -65,7 +65,7 @@ index e64c68a..10aa3d7 100644
static void
nm_manager_update_metered (NMManager *self)
{
-@@ -727,6 +756,9 @@ nm_manager_update_state (NMManager *manager)
+@@ -827,6 +856,9 @@ nm_manager_update_state (NMManager *manager)
nm_connectivity_set_online (priv->connectivity, new_state >= NM_STATE_CONNECTED_LOCAL);
@@ -75,7 +75,7 @@ index e64c68a..10aa3d7 100644
if (new_state == NM_STATE_CONNECTED_SITE) {
nm_connectivity_check_async (priv->connectivity,
checked_connectivity,
-@@ -4410,6 +4442,65 @@ impl_manager_check_connectivity (NMManager *self,
+@@ -4632,6 +4664,65 @@ impl_manager_check_connectivity (NMManager *self,
}
static void
@@ -141,7 +141,7 @@ index e64c68a..10aa3d7 100644
start_factory (NMDeviceFactory *factory, gpointer user_data)
{
nm_device_factory_start (factory);
-@@ -4480,6 +4571,9 @@ nm_manager_start (NMManager *self, GError **error)
+@@ -4702,6 +4793,9 @@ nm_manager_start (NMManager *self, GError **error)
check_if_startup_complete (self);
@@ -151,7 +151,7 @@ index e64c68a..10aa3d7 100644
return TRUE;
}
-@@ -5280,6 +5374,22 @@ nm_manager_init (NMManager *self)
+@@ -5503,6 +5597,22 @@ nm_manager_init (NMManager *self)
KERNEL_FIRMWARE_DIR);
}
@@ -174,7 +174,7 @@ index e64c68a..10aa3d7 100644
/* Update timestamps in active connections */
priv->timestamp_update_id = g_timeout_add_seconds (300, (GSourceFunc) periodic_update_active_connection_timestamps, self);
-@@ -5522,6 +5632,16 @@ dispose (GObject *object)
+@@ -5748,6 +5858,16 @@ dispose (GObject *object)
g_clear_object (&priv->fw_monitor);
}
diff --git a/debian/patches/Ignore-p2p0-wifi-devices-from-android.patch b/debian/patches/Ignore-p2p0-wifi-devices-from-android.patch
index c567c96..08410c3 100644
--- a/debian/patches/Ignore-p2p0-wifi-devices-from-android.patch
+++ b/debian/patches/Ignore-p2p0-wifi-devices-from-android.patch
@@ -7,10 +7,10 @@ Subject: Ignore p2p0 wifi devices from android.
1 file changed, 10 insertions(+)
diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 769662c..b770139 100644
+index 25c94b6..7f7648d 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
-@@ -2105,6 +2105,16 @@ platform_link_added (NMManager *self,
+@@ -2221,6 +2221,16 @@ platform_link_added (NMManager *self,
!strncmp (plink->name, "ccmni", NM_STRLEN ("ccmni")))
return;
diff --git a/debian/patches/Ignore-rmnet_usbX-devices.patch b/debian/patches/Ignore-rmnet_usbX-devices.patch
index f973a5f..f771978 100644
--- a/debian/patches/Ignore-rmnet_usbX-devices.patch
+++ b/debian/patches/Ignore-rmnet_usbX-devices.patch
@@ -7,10 +7,10 @@ Subject: Ignore rmnet_usbX devices.
1 file changed, 6 insertions(+)
diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 10aa3d7..769662c 100644
+index 9ab54b3..25c94b6 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
-@@ -2099,6 +2099,12 @@ platform_link_added (NMManager *self,
+@@ -2215,6 +2215,12 @@ platform_link_added (NMManager *self,
}
}
diff --git a/debian/patches/Let-NetworkManager-read-oFono-settings-file-and-crea.patch b/debian/patches/Let-NetworkManager-read-oFono-settings-file-and-crea.patch
index 4187e1f..f112c29 100644
--- a/debian/patches/Let-NetworkManager-read-oFono-settings-file-and-crea.patch
+++ b/debian/patches/Let-NetworkManager-read-oFono-settings-file-and-crea.patch
@@ -22,7 +22,7 @@ Subject: Let NetworkManager read oFono settings file and create connections
create mode 100644 src/settings/plugins/ofono/plugin.h
diff --git a/configure.ac b/configure.ac
-index b7a0583..2ccfa23 100644
+index 911f617..a34babe 100644
--- a/configure.ac
+++ b/configure.ac
@@ -95,6 +95,7 @@ AC_ARG_ENABLE(ifcfg-rh, AS_HELP_STRING([--enable-ifcfg-rh], [enable ifcfg-rh con
@@ -50,7 +50,7 @@ index b7a0583..2ccfa23 100644
AC_ARG_WITH(config-plugins-default, AS_HELP_STRING([--with-config-plugins-default=PLUGINS], [Default configuration option for main.plugins setting, used as fallback if the configuration option is unset]), [config_plugins_default="$withval"], [config_plugins_default=""])
if test -z "$config_plugins_default" -o "$config_plugins_default" = no; then
-@@ -1043,6 +1047,7 @@ src/ppp-manager/Makefile
+@@ -1068,6 +1072,7 @@ src/ppp-manager/Makefile
src/settings/plugins/Makefile
src/settings/plugins/ifupdown/Makefile
src/settings/plugins/ifupdown/tests/Makefile
@@ -58,7 +58,7 @@ index b7a0583..2ccfa23 100644
src/settings/plugins/ifnet/Makefile
src/settings/plugins/ifnet/tests/Makefile
src/settings/plugins/ifcfg-rh/Makefile
-@@ -1169,6 +1174,7 @@ echo " ibft: ${enable_config_plugin_ibft}"
+@@ -1194,6 +1199,7 @@ echo " ibft: ${enable_config_plugin_ibft}"
echo " ifcfg-rh: ${enable_ifcfg_rh}"
echo " ifupdown: ${enable_ifupdown}"
echo " ifnet: ${enable_ifnet}"
diff --git a/debian/patches/Order-IPv6-nameservers-before-IPv4-for-dns-plugins-d.patch b/debian/patches/Order-IPv6-nameservers-before-IPv4-for-dns-plugins-d.patch
deleted file mode 100644
index 83d8940..0000000
--- a/debian/patches/Order-IPv6-nameservers-before-IPv4-for-dns-plugins-d.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
-Date: Fri, 13 May 2016 11:03:53 +0800
-Subject: Order IPv6 nameservers before IPv4 for dns plugins (dnsmasq, bind)
-
-IPv6 nameservers are usually ordered last because there's some chance of broken
-routers dropping the AAAA requests before they reach the nameservers, but when
-using dnsmasq, this is mitigated by how dnsmasq handles sending requests to the
-nameservers. Since ordering IPv4 nameservers before IPv6 defeats the purpose of
-enabling IPv6 and trying to prefer it whenever possible, make sure the IPv6
-nameservers are actually showing up first in dns plugin configuration.
-
-This is a very simple implementation of such re-ordering, just add the IPv6
-nameservers first when building the list of IP configurations (which will
-include nameservers, search domains, etc.), the IPv4 data will be appended
-right after.
----
- src/dns-manager/nm-dns-manager.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/dns-manager/nm-dns-manager.c b/src/dns-manager/nm-dns-manager.c
-index 77e9221..9b7092c 100644
---- a/src/dns-manager/nm-dns-manager.c
-+++ b/src/dns-manager/nm-dns-manager.c
-@@ -782,14 +782,14 @@ build_plugin_config_lists (NMDnsManager *self,
- * still use the domain information in each config to provide split DNS if
- * they want to.
- */
-- if (priv->ip4_vpn_config)
-- *out_vpn_configs = g_slist_append (*out_vpn_configs, priv->ip4_vpn_config);
- if (priv->ip6_vpn_config)
- *out_vpn_configs = g_slist_append (*out_vpn_configs, priv->ip6_vpn_config);
-- if (priv->ip4_device_config)
-- *out_dev_configs = g_slist_append (*out_dev_configs, priv->ip4_device_config);
-+ if (priv->ip4_vpn_config)
-+ *out_vpn_configs = g_slist_append (*out_vpn_configs, priv->ip4_vpn_config);
- if (priv->ip6_device_config)
- *out_dev_configs = g_slist_append (*out_dev_configs, priv->ip6_device_config);
-+ if (priv->ip4_device_config)
-+ *out_dev_configs = g_slist_append (*out_dev_configs, priv->ip4_device_config);
-
- for (iter = priv->configs; iter; iter = g_slist_next (iter)) {
- if (!NM_IN_SET (iter->data, priv->ip4_vpn_config,
diff --git a/debian/patches/Read-config-from-run.patch b/debian/patches/Read-config-from-run.patch
index 287886e..f4579a8 100644
--- a/debian/patches/Read-config-from-run.patch
+++ b/debian/patches/Read-config-from-run.patch
@@ -9,10 +9,10 @@ Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/15918
1 file changed, 19 insertions(+)
diff --git a/src/nm-config.c b/src/nm-config.c
-index 8bca687..e962f91 100644
+index 247b9a8..b72bb43 100644
--- a/src/nm-config.c
+++ b/src/nm-config.c
-@@ -38,6 +38,7 @@
+@@ -39,6 +39,7 @@
#define DEFAULT_SYSTEM_CONFIG_DIR NMLIBDIR "/conf.d"
#define DEFAULT_NO_AUTO_DEFAULT_FILE NMSTATEDIR "/no-auto-default.state"
#define DEFAULT_INTERN_CONFIG_FILE NMSTATEDIR "/NetworkManager-intern.conf"
diff --git a/debian/patches/Read-system-connections-from-run.patch b/debian/patches/Read-system-connections-from-run.patch
index da99432..21276a3 100644
--- a/debian/patches/Read-system-connections-from-run.patch
+++ b/debian/patches/Read-system-connections-from-run.patch
@@ -9,7 +9,7 @@ Bug-Ubuntu: https://launchpad.net/bugs/1594551
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/src/nm-config.c b/src/nm-config.c
-index e962f91..9784986 100644
+index b72bb43..1d5e97a 100644
--- a/src/nm-config.c
+++ b/src/nm-config.c
@@ -925,8 +925,9 @@ read_entire_config (const NMConfigCmdLineOptions *cli,
diff --git a/debian/patches/Replace-Ad-Hoc-WPA-None-support-with-IBSS-RSN-PSK.patch b/debian/patches/Replace-Ad-Hoc-WPA-None-support-with-IBSS-RSN-PSK.patch
index 3a997ce..16c3152 100644
--- a/debian/patches/Replace-Ad-Hoc-WPA-None-support-with-IBSS-RSN-PSK.patch
+++ b/debian/patches/Replace-Ad-Hoc-WPA-None-support-with-IBSS-RSN-PSK.patch
@@ -472,10 +472,10 @@ index 79f217a..8ca4ed6 100644
return NL_SKIP;
diff --git a/src/settings/plugins/ifcfg-rh/reader.c b/src/settings/plugins/ifcfg-rh/reader.c
-index 39e981f..c87ccf8 100644
+index fe762db..cdac314 100644
--- a/src/settings/plugins/ifcfg-rh/reader.c
+++ b/src/settings/plugins/ifcfg-rh/reader.c
-@@ -2291,9 +2291,8 @@ fill_wpa_ciphers (shvarFile *ifcfg,
+@@ -2296,9 +2296,8 @@ fill_wpa_ciphers (shvarFile *ifcfg,
PARSE_WARNING ("ignoring group cipher '%s' (only one group cipher allowed "
"in Ad-Hoc mode)", *iter);
continue;
@@ -487,7 +487,7 @@ index 39e981f..c87ccf8 100644
continue;
}
}
-@@ -3119,8 +3118,8 @@ make_wpa_setting (shvarFile *ifcfg,
+@@ -3124,8 +3123,8 @@ make_wpa_setting (shvarFile *ifcfg,
/* WPA and/or RSN */
if (adhoc) {
@@ -498,7 +498,7 @@ index 39e981f..c87ccf8 100644
} else {
char *allow_wpa, *allow_rsn;
-@@ -3160,10 +3159,7 @@ make_wpa_setting (shvarFile *ifcfg,
+@@ -3165,10 +3164,7 @@ make_wpa_setting (shvarFile *ifcfg,
goto error;
}
diff --git a/debian/patches/Revert-wifi-disable-Ad-Hoc-WPA-connections-lp-905748.patch b/debian/patches/Revert-wifi-disable-Ad-Hoc-WPA-connections-lp-905748.patch
index ab815bb..a89c158 100644
--- a/debian/patches/Revert-wifi-disable-Ad-Hoc-WPA-connections-lp-905748.patch
+++ b/debian/patches/Revert-wifi-disable-Ad-Hoc-WPA-connections-lp-905748.patch
@@ -34,10 +34,10 @@ index 717260a..f1beb6a 100644
return FALSE;
if (have_ap) {
diff --git a/src/devices/wifi/nm-device-wifi.c b/src/devices/wifi/nm-device-wifi.c
-index 95a89ea..a6acd37 100644
+index 17f5b14..8c665e7 100644
--- a/src/devices/wifi/nm-device-wifi.c
+++ b/src/devices/wifi/nm-device-wifi.c
-@@ -510,36 +510,6 @@ deactivate (NMDevice *device)
+@@ -516,36 +516,6 @@ deactivate (NMDevice *device)
}
static gboolean
@@ -74,7 +74,7 @@ index 95a89ea..a6acd37 100644
check_connection_compatible (NMDevice *device, NMConnection *connection)
{
NMDeviceWifi *self = NM_DEVICE_WIFI (device);
-@@ -585,9 +555,6 @@ check_connection_compatible (NMDevice *device, NMConnection *connection)
+@@ -591,9 +561,6 @@ check_connection_compatible (NMDevice *device, NMConnection *connection)
} else if (mac)
return FALSE;
@@ -84,7 +84,7 @@ index 95a89ea..a6acd37 100644
/* Early exit if supplicant or device doesn't support requested mode */
mode = nm_setting_wireless_get_mode (s_wireless);
if (g_strcmp0 (mode, NM_SETTING_WIRELESS_MODE_ADHOC) == 0) {
-@@ -828,21 +795,6 @@ complete_connection (NMDevice *device,
+@@ -835,21 +802,6 @@ complete_connection (NMDevice *device,
}
}
@@ -106,7 +106,7 @@ index 95a89ea..a6acd37 100644
str_ssid = nm_utils_ssid_to_utf8 (ssid->data, ssid->len);
nm_utils_complete_generic (NM_PLATFORM_GET,
-@@ -2305,16 +2257,6 @@ act_stage1_prepare (NMDevice *device, NMDeviceStateReason *reason)
+@@ -2317,16 +2269,6 @@ act_stage1_prepare (NMDevice *device, NMDeviceStateReason *reason)
}
g_object_notify (G_OBJECT (self), NM_DEVICE_WIFI_MODE);
@@ -124,10 +124,10 @@ index 95a89ea..a6acd37 100644
cloned_mac = nm_setting_wireless_get_cloned_mac_address (s_wireless);
nm_device_set_hw_addr (device, cloned_mac, "set", LOGD_WIFI);
diff --git a/src/settings/nm-settings.c b/src/settings/nm-settings.c
-index 6514899..e2e65ba 100644
+index 73c678a..0801926 100644
--- a/src/settings/nm-settings.c
+++ b/src/settings/nm-settings.c
-@@ -1280,38 +1280,6 @@ pk_add_cb (NMAuthChain *chain,
+@@ -1263,38 +1263,6 @@ pk_add_cb (NMAuthChain *chain,
nm_auth_chain_unref (chain);
}
@@ -166,7 +166,7 @@ index 6514899..e2e65ba 100644
void
nm_settings_add_connection_dbus (NMSettings *self,
NMConnection *connection,
-@@ -1341,17 +1309,6 @@ nm_settings_add_connection_dbus (NMSettings *self,
+@@ -1324,17 +1292,6 @@ nm_settings_add_connection_dbus (NMSettings *self,
goto done;
}
diff --git a/debian/patches/Track-killswitch-change-signals-from-urfkill.patch b/debian/patches/Track-killswitch-change-signals-from-urfkill.patch
index 45b668e..3bf095c 100644
--- a/debian/patches/Track-killswitch-change-signals-from-urfkill.patch
+++ b/debian/patches/Track-killswitch-change-signals-from-urfkill.patch
@@ -16,10 +16,10 @@ WirelessEnabled state if urfkill support is enabled.
create mode 100644 src/nm-urfkill-manager.h
diff --git a/config.h.in b/config.h.in
-index baabb79..356de31 100644
+index 8f8fa7c..fdd9d69 100644
--- a/config.h.in
+++ b/config.h.in
-@@ -261,6 +261,9 @@
+@@ -265,6 +265,9 @@
/* Define if you have ModemManager1 support */
#undef WITH_MODEM_MANAGER_1
@@ -29,7 +29,7 @@ index baabb79..356de31 100644
/* whether to compile polkit support */
#undef WITH_POLKIT
-@@ -276,6 +279,9 @@
+@@ -280,6 +283,9 @@
/* Define if you have Teamd control support */
#undef WITH_TEAMDCTL
@@ -40,10 +40,10 @@ index baabb79..356de31 100644
#undef WITH_WIFI
diff --git a/configure.ac b/configure.ac
-index 2ccfa23..6ad177d 100644
+index a47f09e..4c9aebe 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -268,6 +268,17 @@ else
+@@ -264,6 +264,17 @@ else
fi
dnl
@@ -62,10 +62,10 @@ index 2ccfa23..6ad177d 100644
dnl
LT_LIB_M
diff --git a/src/Makefile.am b/src/Makefile.am
-index 2495bbc..49028f1 100644
+index b4fc16d..eb00052 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
-@@ -445,6 +445,12 @@ libNetworkManager_la_SOURCES = \
+@@ -444,6 +444,12 @@ libNetworkManager_la_SOURCES = \
NetworkManagerUtils.c \
NetworkManagerUtils.h
@@ -76,13 +76,13 @@ index 2495bbc..49028f1 100644
+ $(NULL)
+endif
- if SUSPEND_RESUME_UPOWER
- libNetworkManager_la_SOURCES += nm-sleep-monitor-upower.c
+ if WITH_WEXT
+ libNetworkManager_la_SOURCES += \
diff --git a/src/nm-manager.c b/src/nm-manager.c
-index b770139..04b0a43 100644
+index 7f7648d..e9f3bdf 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
-@@ -34,6 +34,7 @@
+@@ -35,6 +35,7 @@
#include "nm-device-generic.h"
#include "nm-platform.h"
#include "nm-rfkill-manager.h"
@@ -90,7 +90,7 @@ index b770139..04b0a43 100644
#include "nm-dhcp-manager.h"
#include "nm-settings.h"
#include "nm-settings-connection.h"
-@@ -121,6 +122,9 @@ typedef struct {
+@@ -122,6 +123,9 @@ typedef struct {
guint id;
} prop_filter;
NMRfkillManager *rfkill_mgr;
@@ -100,7 +100,7 @@ index b770139..04b0a43 100644
NMSettings *settings;
char *hostname;
-@@ -144,6 +148,7 @@ typedef struct {
+@@ -146,6 +150,7 @@ typedef struct {
gboolean ifstate_force_online;
guint timestamp_update_id;
@@ -108,7 +108,7 @@ index b770139..04b0a43 100644
gboolean startup;
gboolean devices_inited;
-@@ -5210,6 +5215,49 @@ dbus_connection_changed_cb (NMBusManager *dbus_mgr,
+@@ -5432,6 +5437,49 @@ dbus_connection_changed_cb (NMBusManager *dbus_mgr,
/**********************************************************************/
@@ -158,7 +158,7 @@ index b770139..04b0a43 100644
NM_DEFINE_SINGLETON_REGISTER (NMManager);
NMManager *
-@@ -5231,6 +5279,44 @@ nm_connection_provider_get (void)
+@@ -5453,6 +5501,44 @@ nm_connection_provider_get (void)
return p;
}
@@ -180,8 +180,8 @@ index b770139..04b0a43 100644
+
+ priv = NM_MANAGER_GET_PRIVATE (mgr);
+
-+ rfkill_change (priv->radio_states[RFKILL_TYPE_WLAN].desc, RFKILL_TYPE_WLAN, state->wlan_enabled);
-+ rfkill_change (priv->radio_states[RFKILL_TYPE_WWAN].desc, RFKILL_TYPE_WWAN, state->wwan_enabled);
++ rfkill_change (mgr, priv->radio_states[RFKILL_TYPE_WLAN].desc, RFKILL_TYPE_WLAN, state->wlan_enabled);
++ rfkill_change (mgr, priv->radio_states[RFKILL_TYPE_WWAN].desc, RFKILL_TYPE_WWAN, state->wwan_enabled);
+
+ return G_SOURCE_REMOVE;
+}
@@ -203,47 +203,44 @@ index b770139..04b0a43 100644
NMManager *
nm_manager_setup (const char *state_file,
gboolean initial_net_enabled,
-@@ -5311,16 +5397,38 @@ constructed (GObject *object)
- "rfkill-changed",
+@@ -5537,13 +5623,35 @@ constructed (GObject *object)
G_CALLBACK (rfkill_manager_rfkill_changed_cb),
self);
+
+#if WITH_URFKILL
-+ priv->urfkill_mgr = nm_urfkill_manager_new ();
-+
-+ g_signal_connect (priv->urfkill_mgr,
-+ "wlan-state-changed",
-+ G_CALLBACK (urfkill_wlan_state_changed_cb),
-+ self);
-+ g_signal_connect (priv->urfkill_mgr,
-+ "wwan-state-changed",
-+ G_CALLBACK (urfkill_wwan_state_changed_cb),
-+ self);
-+ urfkill_wlan_state_changed_cb (priv->urfkill_mgr, TRUE, self);
-+ urfkill_wwan_state_changed_cb (priv->urfkill_mgr, TRUE, self);
++ priv->urfkill_mgr = nm_urfkill_manager_new ();
++
++ g_signal_connect (priv->urfkill_mgr,
++ "wlan-state-changed",
++ G_CALLBACK (urfkill_wlan_state_changed_cb),
++ self);
++ g_signal_connect (priv->urfkill_mgr,
++ "wwan-state-changed",
++ G_CALLBACK (urfkill_wlan_state_changed_cb),
++ self);
++ urfkill_wlan_state_changed_cb (priv->urfkill_mgr, TRUE, self);
++ urfkill_wwan_state_changed_cb (priv->urfkill_mgr, TRUE, self);
+#endif
-
++
/* Force kernel WiFi/WWAN rfkill state to follow NM saved WiFi/WWAN state
* in case the BIOS doesn't save rfkill state, and to be consistent with user
* changes to the WirelessEnabled/WWANEnabled properties which toggle kernel
* rfkill.
*/
-- rfkill_change (priv->radio_states[RFKILL_TYPE_WLAN].desc, RFKILL_TYPE_WLAN, priv->radio_states[RFKILL_TYPE_WLAN].user_enabled);
-- rfkill_change (priv->radio_states[RFKILL_TYPE_WWAN].desc, RFKILL_TYPE_WWAN, priv->radio_states[RFKILL_TYPE_WWAN].user_enabled);
-+ KillState *kill_state = g_slice_new0 (KillState);
-+ kill_state->manager = g_object_ref (self);
-+ kill_state->wlan_enabled = priv->radio_states[RFKILL_TYPE_WLAN].user_enabled;
-+ kill_state->wwan_enabled = priv->radio_states[RFKILL_TYPE_WWAN].user_enabled;
-+
-+ priv->rfkill_initial_id = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, 10,
-+ rfkill_change_timeout,
-+ kill_state,
-+ kill_state_free);
+- rfkill_change (self, priv->radio_states[RFKILL_TYPE_WLAN].desc, RFKILL_TYPE_WLAN, priv->radio_states[RFKILL_TYPE_WLAN].user_enabled);
+- rfkill_change (self, priv->radio_states[RFKILL_TYPE_WWAN].desc, RFKILL_TYPE_WWAN, priv->radio_states[RFKILL_TYPE_WWAN].user_enabled);
++ KillState *kill_state = g_slice_new0 (KillState);
++ kill_state->manager = g_object_ref (self);
++ kill_state->wlan_enabled = priv->radio_states[RFKILL_TYPE_WLAN].user_enabled;
++ kill_state->wwan_enabled = priv->radio_states[RFKILL_TYPE_WWAN].user_enabled;
++
++ priv->rfkill_initial_id = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, 10,
++ rfkill_change_timeout,
++ kill_state,
++ kill_state_free);
}
-+
static void
- nm_manager_init (NMManager *self)
- {
diff --git a/src/nm-urfkill-manager.c b/src/nm-urfkill-manager.c
new file mode 100644
index 0000000..211ebc1
diff --git a/debian/patches/Update-dnsmasq-parameters.patch b/debian/patches/Update-dnsmasq-parameters.patch
index 20d8f91..45b0943 100644
--- a/debian/patches/Update-dnsmasq-parameters.patch
+++ b/debian/patches/Update-dnsmasq-parameters.patch
@@ -13,10 +13,10 @@ See also: https://blueprints.launchpad.net/ubuntu/+spec/foundations-p-dns-resolv
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/dns-manager/nm-dns-dnsmasq.c b/src/dns-manager/nm-dns-dnsmasq.c
-index 4cee160..951572c 100644
+index 69b2606..0ad3e64 100644
--- a/src/dns-manager/nm-dns-dnsmasq.c
+++ b/src/dns-manager/nm-dns-dnsmasq.c
-@@ -391,8 +391,8 @@ start_dnsmasq (NMDnsDnsmasq *self)
+@@ -531,8 +531,8 @@ start_dnsmasq (NMDnsDnsmasq *self)
argv[idx++] = "--no-hosts"; /* don't use /etc/hosts to resolve */
argv[idx++] = "--bind-interfaces";
argv[idx++] = "--pid-file=" PIDFILE;
@@ -28,10 +28,10 @@ index 4cee160..951572c 100644
argv[idx++] = "--proxy-dnssec"; /* Allow DNSSEC to pass through */
argv[idx++] = "--enable-dbus=" DNSMASQ_DBUS_SERVICE;
diff --git a/src/dns-manager/nm-dns-manager.c b/src/dns-manager/nm-dns-manager.c
-index b42af16..77e9221 100644
+index 3efd5ac..911df48 100644
--- a/src/dns-manager/nm-dns-manager.c
+++ b/src/dns-manager/nm-dns-manager.c
-@@ -1006,7 +1006,7 @@ update_dns (NMDnsManager *self,
+@@ -1157,7 +1157,7 @@ update_dns (NMDnsManager *self,
;
}
@@ -40,7 +40,7 @@ index b42af16..77e9221 100644
* to ensure that the glibc resolver doesn't try to round-robin nameservers,
* but only uses the local caching nameserver.
*/
-@@ -1014,7 +1014,7 @@ update_dns (NMDnsManager *self,
+@@ -1165,7 +1165,7 @@ update_dns (NMDnsManager *self,
if (nameservers)
g_strfreev (nameservers);
nameservers = g_new0 (char*, 2);
@@ -49,8 +49,8 @@ index b42af16..77e9221 100644
}
if (update) {
-@@ -1555,7 +1555,7 @@ dispose (GObject *object)
- g_clear_pointer (&priv->last_mode, g_free);
+@@ -1750,7 +1750,7 @@ dispose (GObject *object)
+ _clear_plugin (self);
/* If we're quitting, leave a valid resolv.conf in place, not one
- * pointing to 127.0.0.1 if any plugins were active. Thus update
diff --git a/debian/patches/cli-initialize-connection-list-in-do_device_connect.patch b/debian/patches/cli-initialize-connection-list-in-do_device_connect.patch
deleted file mode 100644
index 1349c3e..0000000
--- a/debian/patches/cli-initialize-connection-list-in-do_device_connect.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From: Beniamino Galvani <bgalvani@redhat.com>
-Date: Fri, 24 Jun 2016 14:06:04 +0200
-Subject: cli: initialize connection list in do_device_connect()
-
-The connection list may be required in nmc_secrets_requested() if
-secrets are needed.
-
-Fixes: 45fc268890f70fec0fb66c59de388d1798837230
-
-https://bugzilla.gnome.org/show_bug.cgi?id=767987
-(cherry picked from commit bf7b9c60b6237df12897d17a2ae8921382a0773d)
----
- clients/cli/devices.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/clients/cli/devices.c b/clients/cli/devices.c
-index 65c4be7..1e3d9e4 100644
---- a/clients/cli/devices.c
-+++ b/clients/cli/devices.c
-@@ -1716,6 +1716,8 @@ do_device_connect (NmCli *nmc, int argc, char **argv)
- nmc->nowait_flag = (nmc->timeout == 0);
- nmc->should_wait++;
-
-+ nmc->connections = nm_client_get_connections (nmc->client);
-+
- /* Create secret agent */
- nmc->secret_agent = nm_secret_agent_simple_new ("nmcli-connect");
- if (nmc->secret_agent)
diff --git a/debian/patches/dns-manager-don-t-merge-split-DNS-search-domains.patch b/debian/patches/dns-manager-don-t-merge-split-DNS-search-domains.patch
index 6c11798..afbb02f 100644
--- a/debian/patches/dns-manager-don-t-merge-split-DNS-search-domains.patch
+++ b/debian/patches/dns-manager-don-t-merge-split-DNS-search-domains.patch
@@ -5,14 +5,14 @@ Subject: dns-manager: don't merge split-DNS search domains
Signed-off-by: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1592721
---
- src/dns-manager/nm-dns-manager.c | 44 ++++++++++++++++++++++------------------
- 1 file changed, 24 insertions(+), 20 deletions(-)
+ src/dns-manager/nm-dns-manager.c | 36 ++++++++++++++++++++----------------
+ 1 file changed, 20 insertions(+), 16 deletions(-)
diff --git a/src/dns-manager/nm-dns-manager.c b/src/dns-manager/nm-dns-manager.c
-index 9b7092c..50e65c3 100644
+index 911df48..135a7a9 100644
--- a/src/dns-manager/nm-dns-manager.c
+++ b/src/dns-manager/nm-dns-manager.c
-@@ -201,7 +201,7 @@ add_dns_option_item (GPtrArray *array, const char *str, gboolean ipv6)
+@@ -286,7 +286,7 @@ add_dns_option_item (GPtrArray *array, const char *str, gboolean ipv6)
}
static void
@@ -21,89 +21,68 @@ index 9b7092c..50e65c3 100644
{
guint32 num, num_domains, num_searches, i;
-@@ -214,13 +214,15 @@ merge_one_ip4_config (NMResolvConfData *rc, NMIP4Config *src)
+@@ -299,13 +299,15 @@ merge_one_ip4_config (NMResolvConfData *rc, NMIP4Config *src)
num_domains = nm_ip4_config_get_num_domains (src);
num_searches = nm_ip4_config_get_num_searches (src);
- for (i = 0; i < num_searches; i++) {
- const char *search;
-+ if (!never_default) {
-+ for (i = 0; i < num_searches; i++) {
-+ const char *search;
++ if(!never_default) {
++ for (i = 0; i < num_searches; i++) {
++ const char *search;
- search = nm_ip4_config_get_search (src, i);
- if (!DOMAIN_IS_VALID (search))
- continue;
- add_string_item (rc->searches, search);
-+ search = nm_ip4_config_get_search (src, i);
-+ if (!DOMAIN_IS_VALID (search))
-+ continue;
-+ add_string_item (rc->searches, search);
-+ }
++ search = nm_ip4_config_get_search (src, i);
++ if (!DOMAIN_IS_VALID (search))
++ continue;
++ add_string_item (rc->searches, search);
++ }
}
if (num_domains > 1 || !num_searches) {
-@@ -257,7 +259,7 @@ merge_one_ip4_config (NMResolvConfData *rc, NMIP4Config *src)
+@@ -342,7 +344,7 @@ merge_one_ip4_config (NMResolvConfData *rc, NMIP4Config *src)
}
static void
--merge_one_ip6_config (NMResolvConfData *rc, NMIP6Config *src)
-+merge_one_ip6_config (NMResolvConfData *rc, NMIP6Config *src, gboolean never_default)
+-merge_one_ip6_config (NMResolvConfData *rc, NMIP6Config *src, const char *iface)
++merge_one_ip6_config (NMResolvConfData *rc, NMIP6Config *src, const char *iface, gboolean never_default)
{
guint32 num, num_domains, num_searches, i;
- const char *iface;
-@@ -287,13 +289,15 @@ merge_one_ip6_config (NMResolvConfData *rc, NMIP6Config *src)
+
+@@ -369,13 +371,15 @@ merge_one_ip6_config (NMResolvConfData *rc, NMIP6Config *src, const char *iface)
num_domains = nm_ip6_config_get_num_domains (src);
num_searches = nm_ip6_config_get_num_searches (src);
- for (i = 0; i < num_searches; i++) {
- const char *search;
-+ if (!never_default) {
-+ for (i = 0; i < num_searches; i++) {
-+ const char *search;
++ if (!never_default) {
++ for (i = 0; i < num_searches; i++) {
++ const char *search;
- search = nm_ip6_config_get_search (src, i);
- if (!DOMAIN_IS_VALID (search))
- continue;
- add_string_item (rc->searches, search);
-+ search = nm_ip6_config_get_search (src, i);
-+ if (!DOMAIN_IS_VALID (search))
-+ continue;
-+ add_string_item (rc->searches, search);
-+ }
++ search = nm_ip6_config_get_search (src, i);
++ if (!DOMAIN_IS_VALID (search))
++ continue;
++ add_string_item (rc->searches, search);
++ }
}
if (num_domains > 1 || !num_searches) {
-@@ -881,14 +885,14 @@ update_dns (NMDnsManager *self,
- merge_global_dns_config (&rc, global_config);
- else {
- if (priv->ip4_vpn_config)
-- merge_one_ip4_config (&rc, priv->ip4_vpn_config);
-+ merge_one_ip4_config (&rc, priv->ip4_vpn_config, nm_ip4_config_get_never_default (priv->ip4_vpn_config));
- if (priv->ip4_device_config)
-- merge_one_ip4_config (&rc, priv->ip4_device_config);
-+ merge_one_ip4_config (&rc, priv->ip4_device_config, FALSE);
-
- if (priv->ip6_vpn_config)
-- merge_one_ip6_config (&rc, priv->ip6_vpn_config);
-+ merge_one_ip6_config (&rc, priv->ip6_vpn_config, nm_ip6_config_get_never_default (priv->ip6_vpn_config));
- if (priv->ip6_device_config)
-- merge_one_ip6_config (&rc, priv->ip6_device_config);
-+ merge_one_ip6_config (&rc, priv->ip6_device_config, FALSE);
-
- for (iter = priv->configs; iter; iter = g_slist_next (iter)) {
- if (NM_IN_SET (iter->data, priv->ip4_vpn_config,
-@@ -900,11 +904,11 @@ update_dns (NMDnsManager *self,
- if (NM_IS_IP4_CONFIG (iter->data)) {
- NMIP4Config *config = NM_IP4_CONFIG (iter->data);
-
-- merge_one_ip4_config (&rc, config);
-+ merge_one_ip4_config (&rc, config, FALSE);
- } else if (NM_IS_IP6_CONFIG (iter->data)) {
- NMIP6Config *config = NM_IP6_CONFIG (iter->data);
-
-- merge_one_ip6_config (&rc, config);
-+ merge_one_ip6_config (&rc, config, FALSE);
- } else
- g_assert_not_reached ();
- }
+@@ -404,9 +408,9 @@ merge_one_ip_config_data (NMDnsManager *self,
+ NMDnsIPConfigData *data)
+ {
+ if (NM_IS_IP4_CONFIG (data->config))
+- merge_one_ip4_config (rc, (NMIP4Config *) data->config);
++ merge_one_ip4_config (rc, (NMIP4Config *) data->config, nm_ip4_config_get_never_default (data->config));
+ else if (NM_IS_IP6_CONFIG (data->config))
+- merge_one_ip6_config (rc, (NMIP6Config *) data->config, data->iface);
++ merge_one_ip6_config (rc, (NMIP6Config *) data->config, data->iface, nm_ip6_config_get_never_default (data->config));
+ else
+ g_return_if_reached ();
+ }
diff --git a/debian/patches/libnm-Check-self-still-NMManager-or-not.patch b/debian/patches/libnm-Check-self-still-NMManager-or-not.patch
index 72c7d1f..bdf8029 100644
--- a/debian/patches/libnm-Check-self-still-NMManager-or-not.patch
+++ b/debian/patches/libnm-Check-self-still-NMManager-or-not.patch
@@ -8,10 +8,10 @@ Return if self is not NMManager or it will crash.
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/libnm/nm-manager.c b/libnm/nm-manager.c
-index a6c1f3f..774c8c1 100644
+index 27bd4ca..ed1fd36 100644
--- a/libnm/nm-manager.c
+++ b/libnm/nm-manager.c
-@@ -810,12 +810,16 @@ find_active_connection_by_path (NMManager *self, const char *ac_path)
+@@ -803,12 +803,16 @@ find_active_connection_by_path (NMManager *self, const char *ac_path)
static void
recheck_pending_activations (NMManager *self)
{
diff --git a/debian/patches/libnm-don-t-require-initialized-out_encrypted-argume.patch b/debian/patches/libnm-don-t-require-initialized-out_encrypted-argume.patch
deleted file mode 100644
index 1ea06ef..0000000
--- a/debian/patches/libnm-don-t-require-initialized-out_encrypted-argume.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From: Thomas Haller <thaller@redhat.com>
-Date: Fri, 13 May 2016 14:19:59 +0200
-Subject: libnm: don't require initialized @out_encrypted argument in
- nm_utils_file_is_private_key()
-
-No need to require the caller to initialize the optional out-argument.
-Otherwise we get:
-
- (nm-connection-editor:2471): libnm-CRITICAL **: nm_utils_file_is_private_key: assertion 'out_encrypted == NULL || *out_encrypted == FALSE' failed
-
-https://bugzilla.gnome.org/show_bug.cgi?id=763578
-
-Fixes: 1c4f41c61013d79a32eeac246d204c2f378e6915
----
- libnm-core/nm-utils.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libnm-core/nm-utils.c b/libnm-core/nm-utils.c
-index 70c268f..1080d9e 100644
---- a/libnm-core/nm-utils.c
-+++ b/libnm-core/nm-utils.c
-@@ -2399,8 +2399,8 @@ nm_utils_file_is_private_key (const char *filename, gboolean *out_encrypted)
- const char *extensions[] = { ".der", ".pem", ".p12", ".key", NULL };
-
- g_return_val_if_fail (filename != NULL, FALSE);
-- g_return_val_if_fail (out_encrypted == NULL || *out_encrypted == FALSE, FALSE);
-
-+ NM_SET_OUT (out_encrypted, FALSE);
- if (!file_has_extension (filename, extensions))
- return FALSE;
-
diff --git a/debian/patches/series b/debian/patches/series
index cefc006..7894c10 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,27 +3,25 @@ Don-t-setup-Sleep-Monitor-if-not-booted-with-systemd.patch
fix-arping-path.patch
Check-at-runtime-whether-to-start-ModemManager.patch
Don-t-make-NetworkManager-D-Bus-activatable.patch
-Don-t-block-network.target-on-NetworkManager-wait-on.patch
+systemd-Don-t-enable-NetworkManager-wait-online.serv.patch
Fix-iscsiadm-path.patch
+wifi-clear-WiFi-requested_scan-if-suppl-exits.patch
+wifi-clear-WiFi-requested_scan-if-suppl-goes-INACTIV.patch
Provide-access-to-some-of-NM-s-interfaces-to-whoopsi.patch
Update-dnsmasq-parameters.patch
-Filter-DNS-servers-to-add-to-dnsmasq-based-on-availa.patch
-Order-IPv6-nameservers-before-IPv4-for-dns-plugins-d.patch
Revert-wifi-disable-Ad-Hoc-WPA-connections-lp-905748.patch
Replace-Ad-Hoc-WPA-None-support-with-IBSS-RSN-PSK.patch
wifi-Signal-on-the-wifi-device-when-its-supplicant-i.patch
Ignore-rmnet_usbX-devices.patch
Ignore-p2p0-wifi-devices-from-android.patch
+Track-killswitch-change-signals-from-urfkill.patch
wwan-add-support-for-using-oFono-as-a-modem-manager.patch
Add-new-NMSettingsConnection-reset_retries-get-set-m.patch
Let-NetworkManager-read-oFono-settings-file-and-crea.patch
Modify-NMDeviceModem-s-available-logic.patch
-Track-killswitch-change-signals-from-urfkill.patch
Only-test-team-devices-if-we-built-support-for-them.patch
Disable-general-with-expect-which-tends-to-fail-on-p.patch
libnm-Check-self-still-NMManager-or-not.patch
-libnm-don-t-require-initialized-out_encrypted-argume.patch
Read-config-from-run.patch
Read-system-connections-from-run.patch
dns-manager-don-t-merge-split-DNS-search-domains.patch
-cli-initialize-connection-list-in-do_device_connect.patch
diff --git a/debian/patches/systemd-Don-t-enable-NetworkManager-wait-online.serv.patch b/debian/patches/systemd-Don-t-enable-NetworkManager-wait-online.serv.patch
new file mode 100644
index 0000000..c822c2d
--- /dev/null
+++ b/debian/patches/systemd-Don-t-enable-NetworkManager-wait-online.serv.patch
@@ -0,0 +1,30 @@
+From: Michael Biebl <biebl@debian.org>
+Date: Sun, 29 Mar 2015 22:58:43 +0200
+Subject: systemd: Don't enable NetworkManager-wait-online.service statically
+
+Instead we are going to hook up the service in network-online.target
+dynamically via
+
+[Install]
+WantedBy=network-online.target
+
+This way the user can easily disable the service.
+---
+ data/Makefile.am | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/data/Makefile.am b/data/Makefile.am
+index 4ab4106..bbe6b32 100644
+--- a/data/Makefile.am
++++ b/data/Makefile.am
+@@ -18,10 +18,6 @@ endif
+
+ NetworkManager-dispatcher.service: NetworkManager-dispatcher.service.in
+ $(edit) $< >$@
+-
+-install-exec-local:
+- install -d $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
+- ln -sf $(systemdsystemunitdir)/NetworkManager-wait-online.service $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
+ endif
+
+ examplesdir = $(docdir)/examples
diff --git a/debian/patches/wifi-Signal-on-the-wifi-device-when-its-supplicant-i.patch b/debian/patches/wifi-Signal-on-the-wifi-device-when-its-supplicant-i.patch
index 0799215..2b8fd5e 100644
--- a/debian/patches/wifi-Signal-on-the-wifi-device-when-its-supplicant-i.patch
+++ b/debian/patches/wifi-Signal-on-the-wifi-device-when-its-supplicant-i.patch
@@ -32,10 +32,10 @@ index c1f378d..82b2742 100644
</interface>
</node>
diff --git a/src/devices/wifi/nm-device-wifi.c b/src/devices/wifi/nm-device-wifi.c
-index a6acd37..bacd5e6 100644
+index 8c665e7..3bf2468 100644
--- a/src/devices/wifi/nm-device-wifi.c
+++ b/src/devices/wifi/nm-device-wifi.c
-@@ -84,6 +84,7 @@ enum {
+@@ -85,6 +85,7 @@ enum {
ACCESS_POINT_ADDED,
ACCESS_POINT_REMOVED,
SCANNING_ALLOWED,
@@ -43,7 +43,7 @@ index a6acd37..bacd5e6 100644
LAST_SIGNAL
};
-@@ -1363,6 +1364,7 @@ supplicant_iface_scan_done_cb (NMSupplicantInterface *iface,
+@@ -1370,6 +1371,7 @@ supplicant_iface_scan_done_cb (NMSupplicantInterface *iface,
_LOGD (LOGD_WIFI_SCAN, "scan %s", success ? "successful" : "failed");
@@ -51,7 +51,7 @@ index a6acd37..bacd5e6 100644
priv->last_scan = nm_utils_get_monotonic_timestamp_s ();
schedule_scan (self, success);
-@@ -3082,6 +3084,14 @@ nm_device_wifi_class_init (NMDeviceWifiClass *klass)
+@@ -3094,6 +3096,14 @@ nm_device_wifi_class_init (NMDeviceWifiClass *klass)
scanning_allowed_accumulator, NULL, NULL,
G_TYPE_BOOLEAN, 0);
diff --git a/debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-exits.patch b/debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-exits.patch
new file mode 100644
index 0000000..974c24f
--- /dev/null
+++ b/debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-exits.patch
@@ -0,0 +1,29 @@
+From: Tony Espy <espy@canonical.com>
+Date: Thu, 16 Jun 2016 15:07:33 -0400
+Subject: wifi: clear WiFi requested_scan if suppl exits
+
+It's possible for wpa_supplicant to exit with an
+outstanding requested_scan pending. This can lead
+to a stall condition where scanning no longer occurs.
+
+https://mail.gnome.org/archives/networkmanager-list/2016-June/msg00117.html
+---
+ src/devices/wifi/nm-device-wifi.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/devices/wifi/nm-device-wifi.c b/src/devices/wifi/nm-device-wifi.c
+index 82b12a1..cce2f26 100644
+--- a/src/devices/wifi/nm-device-wifi.c
++++ b/src/devices/wifi/nm-device-wifi.c
+@@ -246,6 +246,11 @@ supplicant_interface_release (NMDeviceWifi *self)
+
+ priv = NM_DEVICE_WIFI_GET_PRIVATE (self);
+
++ if (priv->requested_scan) {
++ priv->requested_scan = FALSE;
++ nm_device_remove_pending_action (NM_DEVICE (self), "scan", TRUE);
++ }
++
+ nm_clear_g_source (&priv->pending_scan_id);
+
+ /* Reset the scan interval to be pretty frequent when disconnected */
diff --git a/debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-goes-INACTIV.patch b/debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-goes-INACTIV.patch
new file mode 100644
index 0000000..2882f85
--- /dev/null
+++ b/debian/patches/wifi-clear-WiFi-requested_scan-if-suppl-goes-INACTIV.patch
@@ -0,0 +1,31 @@
+From: Tony Espy <espy@canonical.com>
+Date: Thu, 16 Jun 2016 15:07:32 -0400
+Subject: wifi: clear WiFi requested_scan if suppl goes INACTIVE
+
+It's possible for wpa_supplicant to transition to INACTIVE
+state with an outstanding requested_scan pending. This can
+lead to a stall condition where scanning no longer occurs.
+
+[thaller@redhat.com: added break statement to avoid fall-through]
+
+https://mail.gnome.org/archives/networkmanager-list/2016-June/msg00116.html
+---
+ src/devices/wifi/nm-device-wifi.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/devices/wifi/nm-device-wifi.c b/src/devices/wifi/nm-device-wifi.c
+index cce2f26..17f5b14 100644
+--- a/src/devices/wifi/nm-device-wifi.c
++++ b/src/devices/wifi/nm-device-wifi.c
+@@ -1956,6 +1956,11 @@ supplicant_iface_state_cb (NMSupplicantInterface *iface,
+ else
+ _LOGI (LOGD_DEVICE | LOGD_WIFI, "supplicant interface keeps failing, giving up");
+ break;
++ case NM_SUPPLICANT_INTERFACE_STATE_INACTIVE:
++ priv->requested_scan = FALSE;
++ nm_clear_g_source (&priv->pending_scan_id);
++ request_wireless_scan (self, NULL);
++ break;
+ default:
+ break;
+ }
diff --git a/debian/patches/wwan-add-support-for-using-oFono-as-a-modem-manager.patch b/debian/patches/wwan-add-support-for-using-oFono-as-a-modem-manager.patch
index cd18c65..079077c 100644
--- a/debian/patches/wwan-add-support-for-using-oFono-as-a-modem-manager.patch
+++ b/debian/patches/wwan-add-support-for-using-oFono-as-a-modem-manager.patch
@@ -19,10 +19,10 @@ Signed-off-by: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
create mode 100644 src/devices/wwan/nm-modem-ofono.h
diff --git a/configure.ac b/configure.ac
-index 93adf26..b7a0583 100644
+index 4c9aebe..911f617 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -715,6 +715,15 @@ else
+@@ -726,6 +726,15 @@ else
fi
AM_CONDITIONAL(WITH_BLUEZ5_DUN, test "${enable_bluez5_dun}" = "yes")
@@ -1948,10 +1948,10 @@ index a6c7700..2e3d63b 100644
break;
default:
diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c
-index ef44a13..7a5910f 100644
+index e9365c0..28e4f99 100644
--- a/src/nm-core-utils.c
+++ b/src/nm-core-utils.c
-@@ -2474,7 +2474,13 @@ _get_property_path (const char *ifname,
+@@ -2508,7 +2508,13 @@ _get_property_path (const char *ifname,
ipv6 ? IPV6_PROPERTY_DIR : IPV4_PROPERTY_DIR,
ifname,
property);
@@ -1966,7 +1966,7 @@ index ef44a13..7a5910f 100644
return path;
}
-@@ -2538,9 +2544,15 @@ NM_ASSERT_VALID_PATH_COMPONENT (const char *name)
+@@ -2572,9 +2578,15 @@ NM_ASSERT_VALID_PATH_COMPONENT (const char *name)
nm_log_err (LOGD_CORE, "Failed asserting path component: %s%s%s",
NM_PRINT_FMT_QUOTED (name, "\"", name, "\"", "(null)"));