chiark / gitweb /
build-sys: make PolicyKit support compile-time optional (was runtime-optional already)
[elogind.git] / src / shared / polkit.c
index 8269445..cea7074 100644 (file)
@@ -35,9 +35,10 @@ int verify_polkit(
                 bool *_challenge,
                 DBusError *error) {
 
+
+#ifdef ENABLE_POLKIT
         DBusMessage *m = NULL, *reply = NULL;
         const char *unix_process = "unix-process", *pid = "pid", *starttime = "start-time", *cancel_id = "";
-        const char *sender;
         uint32_t flags = interactive ? 1 : 0;
         pid_t pid_raw;
         uint32_t pid_u32;
@@ -46,6 +47,8 @@ int verify_polkit(
         DBusMessageIter iter_msg, iter_struct, iter_array, iter_dict, iter_variant;
         int r;
         dbus_bool_t authorized = FALSE, challenge = FALSE;
+#endif
+        const char *sender;
         unsigned long ul;
 
         assert(c);
@@ -63,6 +66,8 @@ int verify_polkit(
         if (ul == 0)
                 return 1;
 
+#ifdef ENABLE_POLKIT
+
         pid_raw = bus_get_unix_process_id(c, sender, error);
         if (pid_raw == 0)
                 return -EINVAL;
@@ -163,4 +168,7 @@ finish:
                 dbus_message_unref(reply);
 
         return r;
+#else
+        return -EPERM;
+#endif
 }