]> git.pld-linux.org Git - packages/NetworkManager.git/blob - systemd-fallback.patch
- upull in upstream/fedora patches to fix serious wifi fuckups
[packages/NetworkManager.git] / systemd-fallback.patch
1 --- NetworkManager-1.2.2/configure.ac.systemd   2016-05-17 22:29:49.567521947 +0200
2 +++ NetworkManager-1.2.2/configure.ac   2016-05-17 23:14:31.594510933 +0200
3 @@ -435,7 +435,7 @@ AS_IF([test -z "$use_consolekit"], [use_
4  # output
5  session_tracking=
6  if test "$use_systemd_logind" = "yes" -o "$use_systemd_logind" = "auto"; then
7 -    PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libsystemd], [have_systemd_logind=yes], [PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libsystemd-login], [have_systemd_logind=yes], [have_systemd_logind=no])])
8 +    PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libsystemd], [have_systemd_logind=yes], [PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libsystemd-daemon libsystemd-login], [have_systemd_logind=yes], [have_systemd_logind=no])])
9  else
10      have_systemd_logind=no
11  fi
12 @@ -447,12 +447,13 @@ if test "$have_systemd_logind" = "yes";
13         session_tracking="$session_tracking, systemd-logind"
14  fi
15  if test "$use_consolekit" = "yes"; then
16 -       AC_DEFINE([SESSION_TRACKING_CONSOLEKIT], 1, [Define to 1 if ConsoleKit is available])
17 -       AC_DEFINE([CKDB_PATH], "/var/run/ConsoleKit/database", [Path to ConsoleKit database])
18 +       AC_DEFINE([SESSION_TRACKING_CONSOLEKIT], 1, [Define to 1 if ConsoleKit is available])   
19         session_tracking="$session_tracking, consolekit"
20  fi
21  session_tracking="$(printf '%s' "${session_tracking}" | sed 's/^, //')"
22  
23 +AC_DEFINE([CKDB_PATH], "/var/run/ConsoleKit/database", [Path to ConsoleKit database])
24 +
25  AC_ARG_WITH(suspend-resume, AS_HELP_STRING([--with-suspend-resume=upower|systemd|consolekit], [Build NetworkManager with specific suspend/resume support]))
26  if test "z$with_suspend_resume" = "z"; then
27      PKG_CHECK_EXISTS([libsystemd >= 209], [have_systemd_inhibit=yes],
28 --- NetworkManager-1.2.2/src/nm-session-monitor.c.systemd       2016-04-25 16:46:58.000000000 +0200
29 +++ NetworkManager-1.2.2/src/nm-session-monitor.c       2016-05-28 23:23:37.337347753 +0200
30 @@ -30,6 +30,7 @@
31  #include "NetworkManagerUtils.h"
32  
33  #ifdef SESSION_TRACKING_SYSTEMD
34 +#include <systemd/sd-daemon.h>
35  #include <systemd/sd-login.h>
36  #endif
37  
38 @@ -52,13 +53,11 @@ struct _NMSessionMonitor {
39         } sd;
40  #endif
41  
42 -#ifdef SESSION_TRACKING_CONSOLEKIT
43         struct {
44                 GFileMonitor *monitor;
45                 GHashTable *cache;
46                 time_t timestamp;
47         } ck;
48 -#endif
49  };
50  
51  struct _NMSessionMonitorClass {
52 @@ -138,7 +137,6 @@ st_sd_finalize (NMSessionMonitor *monito
53  
54  /********************************************************************/
55  
56 -#ifdef SESSION_TRACKING_CONSOLEKIT
57  typedef struct {
58         gboolean active;
59  } CkSession;
60 @@ -272,7 +270,6 @@ ck_finalize (NMSessionMonitor *monitor)
61         g_clear_pointer (&monitor->ck.cache, g_hash_table_unref);
62         g_clear_object (&monitor->ck.monitor);
63  }
64 -#endif /* SESSION_TRACKING_CONSOLEKIT */
65  
66  /********************************************************************/
67  
68 @@ -383,13 +380,16 @@ nm_session_monitor_session_exists (NMSes
69         g_return_val_if_fail (NM_IS_SESSION_MONITOR (self), FALSE);
70  
71  #ifdef SESSION_TRACKING_SYSTEMD
72 -       if (st_sd_session_exists (self, uid, active))
73 -               return TRUE;
74 +       if (sd_booted () > 0) {
75 +               if (st_sd_session_exists (self, uid, active))
76 +                       return TRUE;
77 +       } else {
78  #endif
79 -
80 -#ifdef SESSION_TRACKING_CONSOLEKIT
81         if (ck_session_exists (self, uid, active))
82                 return TRUE;
83 +
84 +#ifdef SESSION_TRACKING_SYSTEMD
85 +       }
86  #endif
87  
88         return FALSE;
89 @@ -401,11 +401,15 @@ static void
90  nm_session_monitor_init (NMSessionMonitor *monitor)
91  {
92  #ifdef SESSION_TRACKING_SYSTEMD
93 -       st_sd_init (monitor);
94 +       if (sd_booted () > 0) {
95 +               st_sd_init (monitor);
96 +       } else {
97  #endif
98  
99 -#ifdef SESSION_TRACKING_CONSOLEKIT
100         ck_init (monitor);
101 +
102 +#ifdef SESSION_TRACKING_SYSTEMD
103 +       }
104  #endif
105  }
106  
107 @@ -413,11 +417,15 @@ static void
108  nm_session_monitor_finalize (GObject *object)
109  {
110  #ifdef SESSION_TRACKING_SYSTEMD
111 -       st_sd_finalize (NM_SESSION_MONITOR (object));
112 +       if (sd_booted () > 0) {
113 +               st_sd_finalize (NM_SESSION_MONITOR (object));
114 +       } else {
115  #endif
116  
117 -#ifdef SESSION_TRACKING_CONSOLEKIT
118         ck_finalize (NM_SESSION_MONITOR (object));
119 +
120 +#ifdef SESSION_TRACKING_SYSTEMD
121 +       }
122  #endif
123  
124         if (G_OBJECT_CLASS (nm_session_monitor_parent_class)->finalize != NULL)
125 --- NetworkManager-1.4.0/src/nm-sleep-monitor.c.orig    2016-08-24 15:09:03.000000000 +0200
126 +++ NetworkManager-1.4.0/src/nm-sleep-monitor.c 2016-09-27 16:43:07.397044526 +0200
127 @@ -26,6 +26,10 @@
128  #include <sys/stat.h>
129  #include <gio/gunixfdlist.h>
130  
131 +#ifdef SUSPEND_RESUME_SYSTEMD
132 +# include <systemd/sd-daemon.h>
133 +#endif
134 +
135  #include "nm-core-internal.h"
136  #include "NetworkManagerUtils.h"
137  
138 @@ -40,13 +44,24 @@
139  
140  #elif defined (SUSPEND_RESUME_SYSTEMD)
141  
142 -#define SUSPEND_DBUS_NAME               "org.freedesktop.login1"
143 -#define SUSPEND_DBUS_PATH               "/org/freedesktop/login1"
144 -#define SUSPEND_DBUS_INTERFACE          "org.freedesktop.login1.Manager"
145 +#define SD_SUSPEND_DBUS_NAME               "org.freedesktop.login1"
146 +#define SD_SUSPEND_DBUS_PATH               "/org/freedesktop/login1"
147 +#define SD_SUSPEND_DBUS_INTERFACE          "org.freedesktop.login1.Manager"
148  #define USE_UPOWER                      0
149  #define _NMLOG_PREFIX_NAME              "sleep-monitor-sd"
150  
151  #elif defined(SUSPEND_RESUME_CONSOLEKIT)
152 +
153 +#define USE_UPOWER                      0
154 +#define _NMLOG_PREFIX_NAME              "sleep-monitor-ck"
155 +
156 +#else
157 +
158 +#error define one of SUSPEND_RESUME_SYSTEMD, SUSPEND_RESUME_CONSOLEKIT, or SUSPEND_RESUME_UPOWER
159 +
160 +#endif
161 +
162 +#if defined (SUSPEND_RESUME_SYSTEMD) || defined(SUSPEND_RESUME_CONSOLEKIT)
163  
164  /* ConsoleKit2 has added the same suspend/resume DBUS API that Systemd
165   * uses. http://consolekit2.github.io/ConsoleKit2/#Manager.Inhibit
166 @@ -55,12 +70,6 @@
167  #define SUSPEND_DBUS_NAME               "org.freedesktop.ConsoleKit"
168  #define SUSPEND_DBUS_PATH               "/org/freedesktop/ConsoleKit/Manager"
169  #define SUSPEND_DBUS_INTERFACE          "org.freedesktop.ConsoleKit.Manager"
170 -#define USE_UPOWER                      0
171 -#define _NMLOG_PREFIX_NAME              "sleep-monitor-ck"
172 -
173 -#else
174 -
175 -#error define one of SUSPEND_RESUME_SYSTEMD, SUSPEND_RESUME_CONSOLEKIT, or SUSPEND_RESUME_UPOWER
176  
177  #endif
178  
179 @@ -342,6 +351,17 @@
180  {
181         self->inhibit_fd = -1;
182         self->cancellable = g_cancellable_new ();
183 +#ifdef SUSPEND_RESUME_SYSTEMD
184 +       if (sd_booted () > 0)
185 +               g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
186 +                                             G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START |
187 +                                             G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
188 +                                             NULL,
189 +                                             SD_SUSPEND_DBUS_NAME, SD_SUSPEND_DBUS_PATH, SD_SUSPEND_DBUS_INTERFACE,
190 +                                             self->cancellable,
191 +                                             (GAsyncReadyCallback) on_proxy_acquired, self);
192 +       else
193 +#endif
194         g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
195                                   G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START |
196                                   G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
This page took 0.062506 seconds and 3 git commands to generate.