From 46ba8aae2b82bc5c87ba347e6bf914ecd5e9d51e Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 13 Feb 2013 22:56:43 +0100 Subject: build-sys: make PolicyKit support compile-time optional (was runtime-optional already) --- src/shared/polkit.c | 10 +++++++++- src/shared/spawn-polkit-agent.c | 12 ++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/shared/polkit.c b/src/shared/polkit.c index 826944585c..cea7074ad3 100644 --- a/src/shared/polkit.c +++ b/src/shared/polkit.c @@ -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 } diff --git a/src/shared/spawn-polkit-agent.c b/src/shared/spawn-polkit-agent.c index fcb3722ddf..f9e52cdcbd 100644 --- a/src/shared/spawn-polkit-agent.c +++ b/src/shared/spawn-polkit-agent.c @@ -33,6 +33,7 @@ #include "util.h" #include "spawn-polkit-agent.h" +#ifdef ENABLE_POLKIT static pid_t agent_pid = 0; int polkit_agent_open(void) { @@ -84,3 +85,14 @@ void polkit_agent_close(void) { wait_for_terminate(agent_pid, NULL); agent_pid = 0; } + +#else + +int polkit_agent_open(void) { + return 0; +} + +void polkit_agent_close(void) { +} + +#endif -- cgit v1.2.3-54-g00ecf