summaryrefslogtreecommitdiff
path: root/x11/gdm/files/patch-common_gdm-common.h
diff options
context:
space:
mode:
Diffstat (limited to 'x11/gdm/files/patch-common_gdm-common.h')
-rw-r--r--x11/gdm/files/patch-common_gdm-common.h69
1 files changed, 51 insertions, 18 deletions
diff --git a/x11/gdm/files/patch-common_gdm-common.h b/x11/gdm/files/patch-common_gdm-common.h
index bcc6ec09f739..cfd935a1119f 100644
--- a/x11/gdm/files/patch-common_gdm-common.h
+++ b/x11/gdm/files/patch-common_gdm-common.h
@@ -1,20 +1,53 @@
-$OpenBSD: patch-common_gdm-common_h,v 1.2 2016/04/15 14:11:09 ajacoutot Exp $
-
-REVERT - OpenBSD does not have a systemd implementation (we need ConsoleKit)
-From 9be58c9ec9a3a411492a5182ac4b0d51fdc3a323 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Fri, 12 Jun 2015 13:48:52 -0400
-Subject: require logind support
-
---- common/gdm-common.h.orig Thu Apr 14 07:27:26 2016
-+++ common/gdm-common.h Fri Apr 15 15:05:26 2016
-@@ -31,6 +31,9 @@
- expr; \
- } while G_UNLIKELY (errno == EINTR);
+--- common/gdm-common.h.orig 2022-01-12 14:15:56 UTC
++++ common/gdm-common.h
+@@ -29,6 +29,50 @@
-+/* check if logind is running */
-+#define LOGIND_RUNNING() (access("/run/systemd/seats/", F_OK) >= 0)
-+
- GQuark gdm_common_error_quark (void);
- #define GDM_COMMON_ERROR gdm_common_error_quark()
+ #define REGISTER_SESSION_TIMEOUT 10
++#if defined(WITH_SYSTEMD)
++#define SEAT_ID "seat0"
++#elif defined(WITH_CONSOLE_KIT)
++#define CK_NAME "org.freedesktop.ConsoleKit"
++#define CK_PATH "/org/freedesktop/ConsoleKit"
++#define CK_INTERFACE "org.freedesktop.ConsoleKit"
++
++#define CK_MANAGER_PATH "/org/freedesktop/ConsoleKit/Manager"
++#define CK_MANAGER_INTERFACE "org.freedesktop.ConsoleKit.Manager"
++#define CK_SEAT_INTERFACE "org.freedesktop.ConsoleKit.Seat"
++#define CK_SESSION_INTERFACE "org.freedesktop.ConsoleKit.Session"
++#define SEAT_ID "/org/freedesktop/ConsoleKit/Seat1"
++
++int
++sd_pid_get_session(pid_t pid, char **session);
++
++int
++sd_session_get_uid(const char *session,
++ uid_t *uid);
++
++int
++sd_session_get_class(const char *session, char **class);
++
++int
++sd_session_get_seat(const char *session,
++ char **seat);
++
++int
++sd_seat_get_sessions(const char *seat,
++ char ***sessions,
++ uid_t **uid,
++ unsigned int *n_uids);
++
++int
++sd_session_get_state(const char *session, char **state);
++
++int
++sd_session_get_service(const char *session,
++ char **service);
++
++int
++sd_seat_can_graphical(const char *seat);
++#endif
++
+ #define VE_IGNORE_EINTR(expr) \
+ do { \
+ errno = 0; \