about summary refs log tree commit diff
path: root/debian/patches/Check-at-runtime-whether-to-start-ModemManager.patch
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2015-05-06 16:52:18 +0200
committerMichael Biebl <biebl@debian.org>2015-05-06 16:52:18 +0200
commit7f23bde94f07005d22dfb577635efd096603607c (patch)
tree064b046cc59d8489310fb2001914b3e61960ad97 /debian/patches/Check-at-runtime-whether-to-start-ModemManager.patch
parentba0a3be4e230b7f100409f29020f7837ff335ee9 (diff)
Rebase patches.
Diffstat (limited to 'debian/patches/Check-at-runtime-whether-to-start-ModemManager.patch')
-rw-r--r--debian/patches/Check-at-runtime-whether-to-start-ModemManager.patch70
1 files changed, 70 insertions, 0 deletions
diff --git a/debian/patches/Check-at-runtime-whether-to-start-ModemManager.patch b/debian/patches/Check-at-runtime-whether-to-start-ModemManager.patch
new file mode 100644
index 00000000..2b77012e
--- /dev/null
+++ b/debian/patches/Check-at-runtime-whether-to-start-ModemManager.patch
@@ -0,0 +1,70 @@
+From: Didier Raboud <odyx@debian.org>
+Date: Mon, 2 Feb 2015 16:06:32 +0100
+Subject: Check at runtime whether to start ModemManager
+
+This makes NetworkManager use runtime detection to manage the
+ModemManager lifecycle when not run by systemd. Under systemd, we expect
+the ModemManager service to be started by systemd, under non-systemd, we
+use the dbus activation feature to start ModemManager.
+
+Closes: #770871
+---
+ src/devices/wwan/nm-modem-manager.c | 15 +++++----------
+ 1 file changed, 5 insertions(+), 10 deletions(-)
+
+diff --git a/src/devices/wwan/nm-modem-manager.c b/src/devices/wwan/nm-modem-manager.c
+index f0e5692..b8ecba1 100644
+--- a/src/devices/wwan/nm-modem-manager.c
++++ b/src/devices/wwan/nm-modem-manager.c
+@@ -25,6 +25,7 @@
+ #include <string.h>
+ 
+ #include <libmm-glib.h>
++#include <systemd/sd-daemon.h>
+ 
+ #include "nm-modem-manager.h"
+ #include "nm-logging.h"
+@@ -202,10 +203,9 @@ modem_manager_name_owner_changed (MMManager *modem_manager,
+ 	if (!name_owner) {
+ 		nm_log_info (LOGD_MB, "ModemManager disappeared from bus");
+ 
+-#if !HAVE_SYSTEMD
+ 		/* If not managed by systemd, schedule relaunch */
+-		schedule_modem_manager_relaunch (self, 0);
+-#endif
++		if (!sd_booted())
++			schedule_modem_manager_relaunch (self, 0);
+ 
+ 		return;
+ 	}
+@@ -226,8 +226,6 @@ modem_manager_name_owner_changed (MMManager *modem_manager,
+ 	 */
+ }
+ 
+-#if !HAVE_SYSTEMD
+-
+ static void
+ modem_manager_poke_cb (GDBusConnection *connection,
+                        GAsyncResult *res,
+@@ -276,8 +274,6 @@ modem_manager_poke (NMModemManager *self)
+ 	                        g_object_ref (self)); /* user_data */
+ }
+ 
+-#endif /* HAVE_SYSTEMD */
+-
+ static void
+ modem_manager_check_name_owner (NMModemManager *self)
+ {
+@@ -291,10 +287,9 @@ modem_manager_check_name_owner (NMModemManager *self)
+ 		return;
+ 	}
+ 
+-#if !HAVE_SYSTEMD
+ 	/* If the lifecycle is not managed by systemd, poke */
+-	modem_manager_poke (self);
+-#endif
++	if (!sd_booted())
++		modem_manager_poke (self);
+ }
+ 
+ static void