about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJeremy Bicha <jbicha@ubuntu.com>2018-02-08 18:13:36 -0500
committerJeremy Bicha <jbicha@ubuntu.com>2018-02-08 18:14:13 -0500
commit92f0f7d885561d2ea625fc7cdb1f95178f746c3d (patch)
treea20765c36313a1f74b0632f3cc90383e3777eded
parent8100ba88de3bb593817469b4b697a96cd558332e (diff)
Drop obsolete Ubuntu Phone related patches
-rw-r--r--debian/changelog9
-rw-r--r--debian/patches/Ignore-p2p0-wifi-devices-from-android.patch29
-rw-r--r--debian/patches/Ignore-rmnet_usbX-devices.patch25
-rw-r--r--debian/patches/Track-killswitch-change-signals-from-urfkill.patch585
-rw-r--r--debian/patches/series3
5 files changed, 5 insertions, 646 deletions
diff --git a/debian/changelog b/debian/changelog
index f1d8b08f..1ea27323 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,6 @@
 network-manager (1.10.4-1ubuntu1) UNRELEASED; urgency=medium
 
-  * Merge with Debian. Remaining changes:
+  * Merge with Debian (LP: #1734586). Remaining changes:
     - Use systemd-resolved instead of dnsmasq
     - debian/control:
       + Depend on isc-dhcp-client instead of recommends
@@ -32,9 +32,6 @@ network-manager (1.10.4-1ubuntu1) UNRELEASED; urgency=medium
     - Add patches. See patch descriptions for more details:
       + Provide-access-to-some-of-NM-s-interfaces-to-whoopsie.patch
       + Update-dnsmasq-parameters.patch
-      + Ignore-rmnet_usbX-devices.patch
-      + Ignore-p2p0-wifi-devices-from-android.patch
-      + Track-killswitch-change-signals-from-urfkill.patch
       + Disable-general-with-expect.patch
       + libnm-Check-self-still-NMManager-or-not.patch
       + dns-manager-don-t-merge-split-DNS-search-domains.patch
@@ -46,6 +43,10 @@ network-manager (1.10.4-1ubuntu1) UNRELEASED; urgency=medium
   * Other dropped changes:
     - debian/control, debian/rules:
       + Disable team support since it's in universe (LP: #1392012)
+    - Obsolete Ubuntu Phone related patches:
+      + Ignore-p2p0-wifi-devices-from-android.patch
+      + Ignore-rmnet_usbX-devices.patch'
+      + Track-killswitch-change-signals-from-urfkill.patch
 
  -- Jeremy Bicha <jbicha@ubuntu.com>  Thu, 08 Feb 2018 17:54:22 -0500
 
diff --git a/debian/patches/Ignore-p2p0-wifi-devices-from-android.patch b/debian/patches/Ignore-p2p0-wifi-devices-from-android.patch
deleted file mode 100644
index 471242cc..00000000
--- a/debian/patches/Ignore-p2p0-wifi-devices-from-android.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
-Date: Fri, 13 May 2016 11:08:30 +0800
-Subject: Ignore p2p0 wifi devices from android.
-
----
- src/nm-manager.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 294221e..072f4cd 100644
---- a/src/nm-manager.c
-+++ b/src/nm-manager.c
-@@ -2403,6 +2403,16 @@ platform_link_added (NMManager *self,
- 		!strncmp (plink->name, "ccmni", NM_STRLEN ("ccmni")))
- 		return;
- 
-+	/*
-+	 * Ubuntu: Explicitly unmanage p2p Wi-Fi devices exposed by Android JB Wi-Fi drivers.
-+	 */
-+	NMDeviceType devtype = nm_device_get_device_type (device);
-+	if ((plink->type == NM_LINK_TYPE_WIFI)
-+	    && !strncmp (plink->name, "p2p0", NM_STRLEN ("p2p0"))) {
-+		nm_log_info (LOGD_PLATFORM, "(%s): ignoring P2P wireless iface", plink->name);
-+		return;
-+	}
-+
- 	if (device == NULL) {
- 		gboolean nm_plugin_missing = FALSE;
- 
diff --git a/debian/patches/Ignore-rmnet_usbX-devices.patch b/debian/patches/Ignore-rmnet_usbX-devices.patch
deleted file mode 100644
index 3cc67810..00000000
--- a/debian/patches/Ignore-rmnet_usbX-devices.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
-Date: Fri, 13 May 2016 11:08:17 +0800
-Subject: Ignore rmnet_usbX devices.
-
----
- src/nm-manager.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 413ec0b..294221e 100644
---- a/src/nm-manager.c
-+++ b/src/nm-manager.c
-@@ -2397,6 +2397,12 @@ platform_link_added (NMManager *self,
- 		}
- 	}
- 
-+	/* Ignore rmnet_usb devices, which will be handled by their modem parent
-+	 */
-+	if (!strncmp (plink->name, "rmnet_usb", NM_STRLEN ("rmnet_usb")) ||
-+		!strncmp (plink->name, "ccmni", NM_STRLEN ("ccmni")))
-+		return;
-+
- 	if (device == NULL) {
- 		gboolean nm_plugin_missing = FALSE;
- 
diff --git a/debian/patches/Track-killswitch-change-signals-from-urfkill.patch b/debian/patches/Track-killswitch-change-signals-from-urfkill.patch
deleted file mode 100644
index 33e46686..00000000
--- a/debian/patches/Track-killswitch-change-signals-from-urfkill.patch
+++ /dev/null
@@ -1,585 +0,0 @@
-From: Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
-Date: Fri, 13 May 2016 11:13:08 +0800
-Subject: Track killswitch change signals from urfkill
-
-... Also do that rather than resetting the killswitch to the NM saved
-WirelessEnabled state if urfkill support is enabled.
----
- Makefile.am              |   7 ++
- config.h.in              |   3 +
- configure.ac             |  12 ++
- src/nm-manager.c         | 111 +++++++++++++++++-
- src/nm-urfkill-manager.c | 290 +++++++++++++++++++++++++++++++++++++++++++++++
- src/nm-urfkill-manager.h |  49 ++++++++
- 6 files changed, 470 insertions(+), 2 deletions(-)
- create mode 100644 src/nm-urfkill-manager.c
- create mode 100644 src/nm-urfkill-manager.h
-
-diff --git a/Makefile.am b/Makefile.am
-index 7e1e26f..bdab8cd 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1330,6 +1330,13 @@ src_libNetworkManagerBase_la_SOURCES += \
- 	src/platform/wifi/wifi-utils-wext.h
- endif
- 
-+if WITH_URFKILL
-+src_libNetworkManagerBase_la_SOURCES += \
-+       src/nm-urfkill-manager.c \
-+       src/nm-urfkill-manager.h \
-+       $(NULL)
-+endif
-+
- src_libNetworkManagerBase_la_LIBADD = \
- 	libnm-core/libnm-core.la \
- 	introspection/libnmdbus.la \
-diff --git a/config.h.in b/config.h.in
-index ff4567e..843eb1f 100644
---- a/config.h.in
-+++ b/config.h.in
-@@ -304,6 +304,9 @@
- /* Define if you have Teamd control support */
- #undef WITH_TEAMDCTL
- 
-++/* Define if you want to build with support for the urfkill daemon */
-++#undef WITH_URFKILL
-+
- /* Define if you have Wi-Fi support */
- #undef WITH_WIFI
- 
-diff --git a/configure.ac b/configure.ac
-index 9706573..14132c3 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -274,6 +274,18 @@ else
- 	AC_DEFINE(HAVE_VLAN_FLAG_LOOSE_BINDING, 0, [Define if you have VLAN_FLAG_LOOSE_BINDING])
- fi
- 
-+dnl Default to using WEXT but allow it to be disabled
-+dnl
-+AC_ARG_WITH(urfkill, AS_HELP_STRING([--with-urfkill=yes], [Enable or disable support for urfkill]), ac_with_urfkill=$withval, ac_with_urfkill="yes")
-+if test x"$ac_with_urfkill" = x"yes"; then
-+	AC_DEFINE(WITH_URFKILL, 1, [Define if you want to build with support for the urfkill daemon])
-+else
-+	AC_DEFINE(WITH_URFKILL, 0, [Define if you want to build with support for the urfkill daemon])
-+fi
-+AM_CONDITIONAL(WITH_URFKILL, test x"${ac_with_urfkill}" = x"yes")
-+
-+dnl
-+
- dnl
- dnl Checks for libdl - on certain platforms its part of libc
- dnl
-diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 072f4cd..70e1996 100644
---- a/src/nm-manager.c
-+++ b/src/nm-manager.c
-@@ -38,6 +38,7 @@
- #include "platform/nmp-object.h"
- #include "nm-hostname-manager.h"
- #include "nm-rfkill-manager.h"
-+#include "nm-urfkill-manager.h"
- #include "dhcp/nm-dhcp-manager.h"
- #include "settings/nm-settings.h"
- #include "settings/nm-settings-connection.h"
-@@ -138,6 +139,9 @@ typedef struct {
- 		guint            id;
- 	} prop_filter;
- 	NMRfkillManager *rfkill_mgr;
-+#if WITH_URFKILL
-+	NMUrfkillManager *urfkill_mgr;
-+#endif
- 
- 	CList link_cb_lst;
- 
-@@ -155,6 +159,7 @@ typedef struct {
- 	gboolean ifstate_force_online;
- 
- 	guint timestamp_update_id;
-+	guint rfkill_initial_id;
- 
- 	guint devices_inited_id;
- 
-@@ -6121,6 +6126,49 @@ nm_manager_set_capability (NMManager *self,
- 
- /*****************************************************************************/
- 
-+#if WITH_URFKILL
-+static void
-+urfkill_wlan_state_changed_cb (NMUrfkillManager *mgr,
-+			       gboolean enabled,
-+			       gpointer user_data)
-+{
-+	NMManager *self = NM_MANAGER (user_data);
-+	NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (self);
-+	GError *error = NULL;
-+
-+	nm_log_dbg (LOGD_RFKILL, "urfkill wlan state changed to %s",
-+		    enabled ? "enabled" : "disabled");
-+
-+	if (priv->rfkill_initial_id) {
-+		g_source_remove (priv->rfkill_initial_id);
-+		priv->rfkill_initial_id = 0;
-+	}
-+
-+	manager_update_radio_enabled (self,
-+				      &priv->radio_states[RFKILL_TYPE_WLAN],
-+				      enabled);
-+	nm_manager_update_state (self);
-+}
-+
-+static void
-+urfkill_wwan_state_changed_cb (NMUrfkillManager *mgr,
-+			       gboolean enabled,
-+			       gpointer user_data)
-+{
-+	NMManager *self = NM_MANAGER (user_data);
-+	NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (self);
-+	GError *error = NULL;
-+
-+	nm_log_dbg (LOGD_RFKILL, "urfkill wwan state changed to %s",
-+		    enabled ? "enabled" : "disabled" );
-+
-+	manager_update_radio_enabled (self,
-+				      &priv->radio_states[RFKILL_TYPE_WWAN],
-+				      enabled);
-+	nm_manager_update_state (self);
-+}
-+#endif /* WITH_URFKILL */
-+
- NM_DEFINE_SINGLETON_REGISTER (NMManager);
- 
- NMManager *
-@@ -6138,6 +6186,43 @@ nm_settings_get (void)
- 	return NM_MANAGER_GET_PRIVATE (singleton_instance)->settings;
- }
- 
-+typedef struct KillState KillState;
-+struct KillState {
-+	NMManager *manager;
-+	gboolean wlan_enabled;
-+	gboolean wwan_enabled;
-+};
-+
-+static gboolean
-+rfkill_change_timeout (gpointer user_data)
-+{
-+	KillState *state = (KillState *) user_data;
-+	NMManager *mgr = state->manager;
-+	NMManagerPrivate *priv;
-+
-+	g_return_val_if_fail (NM_IS_MANAGER (mgr), G_SOURCE_REMOVE);
-+
-+	priv = NM_MANAGER_GET_PRIVATE (mgr);
-+
-+	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;
-+}
-+
-+static void
-+kill_state_free (gpointer user_data)
-+{
-+	KillState *state = (KillState *) user_data;
-+
-+	if (state->manager) {
-+		g_object_unref (state->manager);
-+		state->manager = NULL;
-+	}
-+
-+	g_slice_free (KillState, (KillState *)user_data);
-+}
-+
- NMManager *
- nm_manager_setup (void)
- {
-@@ -6217,13 +6302,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_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 (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
-diff --git a/src/nm-urfkill-manager.c b/src/nm-urfkill-manager.c
-new file mode 100644
-index 0000000..5698cd8
---- /dev/null
-+++ b/src/nm-urfkill-manager.c
-@@ -0,0 +1,290 @@
-+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
-+/* NetworkManager -- Network link manager
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License along
-+ * with this program; if not, write to the Free Software Foundation, Inc.,
-+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-+ *
-+ * Copyright (C) 2006 - 2010 Red Hat, Inc.
-+ * Copyright (C) 2006 - 2008 Novell, Inc.
-+ */
-+
-+#include "nm-default.h"
-+
-+#include "config.h"
-+#include "nm-core-internal.h"
-+#include "nm-urfkill-manager.h"
-+#include "nm-utils/nm-glib.h"
-+
-+#include <gio/gio.h>
-+#include <string.h>
-+#include "nm-logging.h"
-+
-+enum {
-+	WLAN_STATE_CHANGED,
-+	WWAN_STATE_CHANGED,
-+	NUMBER_OF_SIGNALS
-+};
-+
-+static guint signals[NUMBER_OF_SIGNALS];
-+
-+struct _NMUrfkillManager {
-+	GObject parent_instance;
-+
-+	guint urfkill_watch;
-+
-+	GDBusProxy *wlan_proxy;
-+	GDBusProxy *wwan_proxy;
-+
-+	GCancellable *watch_cancellable;
-+	GCancellable *wlan_proxy_cancellable;
-+	GCancellable *wwan_proxy_cancellable;
-+};
-+
-+typedef GObjectClass NMUrfkillManagerClass;
-+
-+G_DEFINE_TYPE(NMUrfkillManager, nm_urfkill_manager, G_TYPE_OBJECT)
-+
-+static void
-+wlan_state_changed (GDBusProxy *proxy,
-+		    GVariant            *changed_properties,
-+		    const gchar* const  *invalidated_properties,
-+		    gpointer             user_data)
-+{
-+	NMUrfkillManager *self = NM_URFKILL_MANAGER (user_data);
-+	gboolean enabled;
-+
-+	enabled = nm_urfkill_get_wlan_state (self);
-+
-+	nm_log_dbg (LOGD_RFKILL, "received state change for WLAN: %s",
-+		    enabled ? "unblocked" : "blocked");
-+
-+	g_signal_emit (self, signals[WLAN_STATE_CHANGED], 0, enabled);
-+}
-+
-+static void
-+wwan_state_changed (GDBusProxy *proxy,
-+		    GVariant            *changed_properties,
-+		    const gchar* const  *invalidated_properties,
-+		    gpointer             user_data)
-+{
-+	NMUrfkillManager *self = NM_URFKILL_MANAGER (user_data);
-+	gboolean enabled;
-+
-+	enabled = nm_urfkill_get_wwan_state (self);
-+
-+	nm_log_dbg (LOGD_RFKILL, "received state change for WWAN: %s",
-+		    enabled ? "unblocked" : "blocked");
-+
-+	g_signal_emit (self, signals[WWAN_STATE_CHANGED], 0, enabled);
-+}
-+
-+static void
-+wlan_proxy_created (GObject *source_object,
-+		    GAsyncResult *res,
-+		    gpointer user_data)
-+{
-+	NMUrfkillManager *self = NM_URFKILL_MANAGER (user_data);
-+	GDBusProxy *wlan_proxy;
-+	GError *error;
-+
-+	wlan_proxy = g_dbus_proxy_new_for_bus_finish (res, &error);
-+
-+	if (wlan_proxy) {
-+		self->wlan_proxy = wlan_proxy;
-+
-+		g_signal_connect (self->wlan_proxy, "g-properties-changed",
-+				  G_CALLBACK (wlan_state_changed), self);
-+		g_signal_emit (self, signals[WLAN_STATE_CHANGED], 0,
-+			       nm_urfkill_get_wlan_state (self));
-+	} else {
-+		nm_log_warn (LOGD_RFKILL, "could not create URfkill WLAN device proxy");
-+	}
-+}
-+
-+static void
-+wwan_proxy_created (GObject *source_object,
-+		    GAsyncResult *res,
-+		    gpointer user_data)
-+{
-+	NMUrfkillManager *self = NM_URFKILL_MANAGER (user_data);
-+	GDBusProxy *wwan_proxy;
-+	GError *error;
-+
-+	wwan_proxy = g_dbus_proxy_new_for_bus_finish (res, &error);
-+
-+	if (wwan_proxy) {
-+		self->wwan_proxy = wwan_proxy;
-+
-+		g_signal_connect (self->wwan_proxy, "g-properties-changed",
-+				  G_CALLBACK (wwan_state_changed), self);
-+		g_signal_emit (self, signals[WWAN_STATE_CHANGED], 0,
-+			       nm_urfkill_get_wwan_state (self));
-+	} else {
-+		nm_log_warn (LOGD_RFKILL, "could not create URfkill WWAN device proxy");
-+	}
-+}
-+
-+gboolean
-+nm_urfkill_get_wlan_state (NMUrfkillManager *self)
-+{
-+	GVariant *state;
-+	gboolean enabled = TRUE;
-+
-+	g_return_val_if_fail (self->wlan_proxy != NULL, enabled);
-+
-+	state = g_dbus_proxy_get_cached_property (self->wlan_proxy, "state");
-+
-+	if (state) {
-+		nm_log_dbg (LOGD_RFKILL, "wlan state from urfkill: %d",
-+			    g_variant_get_int32 (state));
-+		enabled = (g_variant_get_int32 (state) <= 0);
-+		g_variant_unref (state);
-+	} else {
-+		nm_log_warn (LOGD_RFKILL, "invalid wlan state from urfkill cached properties");
-+	}
-+
-+	return enabled;
-+}
-+
-+gboolean
-+nm_urfkill_get_wwan_state (NMUrfkillManager *self)
-+{
-+	GVariant *state;
-+	gboolean enabled = TRUE;
-+
-+	g_return_val_if_fail (self->wwan_proxy != NULL, enabled);
-+
-+	state = g_dbus_proxy_get_cached_property (self->wwan_proxy, "state");
-+
-+	if (state) {
-+		nm_log_dbg (LOGD_RFKILL, "wwan state from urfkill: %d",
-+			    g_variant_get_int32 (state));
-+		enabled = (g_variant_get_int32 (state) <= 0);
-+		g_variant_unref (state);
-+	} else {
-+		nm_log_warn (LOGD_RFKILL, "invalid wwan state from urfkill cached properties");
-+	}
-+
-+	return enabled;
-+}
-+
-+static void
-+on_urfkill_appeared (GDBusConnection *connection,
-+		     const gchar     *name,
-+		     const gchar     *name_owner,
-+		     gpointer         user_data)
-+{
-+	NMUrfkillManager *self = NM_URFKILL_MANAGER (user_data);
-+
-+	nm_log_info (LOGD_RFKILL, "urfkill appeared on the bus");
-+
-+	self->wlan_proxy_cancellable = g_cancellable_new ();
-+	self->wwan_proxy_cancellable = g_cancellable_new ();
-+
-+	g_dbus_proxy_new (connection,
-+			  G_DBUS_PROXY_FLAGS_NONE,
-+			  NULL,
-+			  "org.freedesktop.URfkill",
-+			  "/org/freedesktop/URfkill/WLAN",
-+			  "org.freedesktop.URfkill.Killswitch",
-+			  self->wlan_proxy_cancellable,
-+			  wlan_proxy_created,
-+			  self);
-+
-+	g_dbus_proxy_new (connection,
-+			  G_DBUS_PROXY_FLAGS_NONE,
-+			  NULL,
-+			  "org.freedesktop.URfkill",
-+			  "/org/freedesktop/URfkill/WWAN",
-+			  "org.freedesktop.URfkill.Killswitch",
-+			  self->wwan_proxy_cancellable,
-+			  wwan_proxy_created,
-+			  self);
-+}
-+
-+static void
-+on_urfkill_vanished (GDBusConnection *connection,
-+		     const gchar     *name,
-+		     gpointer         user_data)
-+{
-+	NMUrfkillManager *self = NM_URFKILL_MANAGER (user_data);
-+
-+	nm_log_info (LOGD_RFKILL, "urfkill disappeared from the bus");
-+
-+	if (self->wlan_proxy)
-+		g_object_unref (self->wlan_proxy);
-+	if (self->wwan_proxy)
-+		g_object_unref (self->wwan_proxy);
-+}
-+
-+static void
-+nm_urfkill_manager_init (NMUrfkillManager *self)
-+{
-+	self->urfkill_watch = g_bus_watch_name (G_BUS_TYPE_SYSTEM,
-+						"org.freedesktop.URfkill",
-+						0,
-+						on_urfkill_appeared,
-+						on_urfkill_vanished,
-+						self,
-+						NULL);
-+}
-+
-+NMUrfkillManager *
-+nm_urfkill_manager_new (void)
-+{
-+	return NM_URFKILL_MANAGER (g_object_new (NM_TYPE_URFKILL_MANAGER, NULL));
-+}
-+
-+static void
-+nm_urfkill_manager_finalize (GObject *object)
-+{
-+	NMUrfkillManager *mgr = NM_URFKILL_MANAGER (object);
-+
-+	if (mgr->wlan_proxy_cancellable)
-+		g_cancellable_cancel (mgr->wlan_proxy_cancellable);
-+	if (mgr->wwan_proxy_cancellable)
-+		g_cancellable_cancel (mgr->wwan_proxy_cancellable);
-+
-+	if (mgr->urfkill_watch) {
-+		g_bus_unwatch_name (mgr->urfkill_watch);
-+		mgr->urfkill_watch = 0;
-+	}
-+
-+	if (mgr->wlan_proxy)
-+		g_object_unref (mgr->wlan_proxy);
-+	if (mgr->wwan_proxy)
-+		g_object_unref (mgr->wwan_proxy);
-+
-+	G_OBJECT_CLASS (nm_urfkill_manager_parent_class)->finalize (object);
-+}
-+
-+static void
-+nm_urfkill_manager_class_init (NMUrfkillManagerClass *class)
-+{
-+	class->finalize = nm_urfkill_manager_finalize;
-+
-+	signals[WLAN_STATE_CHANGED] =
-+		g_signal_new (NM_URFKILL_MANAGER_WLAN_STATE_CHANGED,
-+			      G_OBJECT_CLASS_TYPE (class),
-+			      G_SIGNAL_RUN_LAST, 0,
-+			      NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-+			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-+
-+	signals[WWAN_STATE_CHANGED] =
-+		g_signal_new (NM_URFKILL_MANAGER_WWAN_STATE_CHANGED,
-+			      G_OBJECT_CLASS_TYPE (class),
-+			      G_SIGNAL_RUN_LAST, 0,
-+			      NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-+			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-+}
-diff --git a/src/nm-urfkill-manager.h b/src/nm-urfkill-manager.h
-new file mode 100644
-index 0000000..7b872f7
---- /dev/null
-+++ b/src/nm-urfkill-manager.h
-@@ -0,0 +1,49 @@
-+/* -*- Mode: C; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
-+/* NetworkManager -- Network link manager
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License along
-+ * with this program; if not, write to the Free Software Foundation, Inc.,
-+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-+ *
-+ * Copyright (C) 2006 - 2008 Red Hat, Inc.
-+ * Copyright (C) 2006 - 2008 Novell, Inc.
-+ */
-+
-+#ifndef __NM_URFKILL_MANAGER_H__
-+#define __NM_URFKILL_MANAGER_H__
-+
-+#include <glib-object.h>
-+
-+#include "nm-utils/nm-glib.h"
-+
-+G_BEGIN_DECLS
-+
-+#define NM_TYPE_URFKILL_MANAGER (nm_urfkill_manager_get_type ())
-+#define NM_URFKILL_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), NM_TYPE_URFKILL_MANAGER, NMUrfkillManager))
-+#define NM_IS_URFKILL_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), NM_TYPE_URFKILL_MANAGER))
-+
-+#define NM_URFKILL_MANAGER_WLAN_STATE_CHANGED "wlan-state-changed"
-+#define NM_URFKILL_MANAGER_WWAN_STATE_CHANGED "wwan-state-changed"
-+
-+typedef struct _NMUrfkillManager NMUrfkillManager;
-+
-+GType nm_urfkill_manager_get_type (void);
-+
-+NMUrfkillManager *nm_urfkill_manager_new (void);
-+
-+gboolean nm_urfkill_get_wlan_state (NMUrfkillManager *self);
-+gboolean nm_urfkill_get_wwan_state (NMUrfkillManager *self);
-+
-+G_END_DECLS
-+
-+#endif /* __NM_URFKILL_MANAGER_H__ */
diff --git a/debian/patches/series b/debian/patches/series
index 6d826682..900073de 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -6,9 +6,6 @@ Fix-iscsiadm-path.patch
 libnm-register-empty-NMClient-and-NetworkManager-when-loa.patch
 Provide-access-to-some-of-NM-s-interfaces-to-whoopsie.patch
 Update-dnsmasq-parameters.patch
-Ignore-rmnet_usbX-devices.patch
-Ignore-p2p0-wifi-devices-from-android.patch
-Track-killswitch-change-signals-from-urfkill.patch
 Disable-general-with-expect.patch
 libnm-Check-self-still-NMManager-or-not.patch
 dns-manager-don-t-merge-split-DNS-search-domains.patch