diff options
| -rw-r--r-- | src/daemon/main.c | 10 | 
1 files changed, 10 insertions, 0 deletions
diff --git a/src/daemon/main.c b/src/daemon/main.c index eb378d24..c759df53 100644 --- a/src/daemon/main.c +++ b/src/daemon/main.c @@ -65,6 +65,10 @@  #include <dbus/dbus.h>  #endif +#ifdef __linux__ +#include <sys/personality.h> +#endif +  #include <pulse/mainloop.h>  #include <pulse/mainloop-signal.h>  #include <pulse/timeval.h> @@ -433,6 +437,12 @@ int main(int argc, char *argv[]) {      /* We might be autospawned, in which case have no idea in which       * context we have been started. Let's cleanup our execution       * context as good as possible */ + +#ifdef __linux__ +    if (personality(PER_LINUX) < 0) +        pa_log_warn("Uh, personality() failed: %s", pa_cstrerror(errno)); +#endif +      pa_drop_root();      pa_close_all(passed_fd, -1);      pa_reset_sigs(-1);  | 
