X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fmain.c;h=7c93f6d9c7c16eca8ee186f8d60fdb21c6ca74f3;hb=a4ddf82766c41627bd94c609bb55983f4b81814f;hp=d7d3995e1b13a4f4b7cf8cdf3f48828332dc3d13;hpb=4288f619215e3dda0b75113d78e4fb7ba219ed58;p=elogind.git diff --git a/src/main.c b/src/main.c index d7d3995e1..7c93f6d9c 100644 --- a/src/main.c +++ b/src/main.c @@ -58,7 +58,7 @@ static int crash_chvt = -1; static bool confirm_spawn = false; static FILE* serialization = NULL; -_noreturn static void freeze(void) { +_noreturn_ static void freeze(void) { for (;;) pause(); } @@ -66,7 +66,7 @@ _noreturn static void freeze(void) { static void nop_handler(int sig) { } -_noreturn static void crash(int sig) { +_noreturn_ static void crash(int sig) { if (!dump_core) log_error("Caught <%s>, not dumping core.", strsignal(sig)); @@ -582,8 +582,9 @@ int main(int argc, char *argv[]) { /* Mount /proc, /sys and friends, so that /proc/cmdline and * /proc/$PID/fd is available. */ - if (mount_setup() < 0) - goto finish; + if (geteuid() == 0) + if (mount_setup() < 0) + goto finish; /* Reset all signal handlers. */ assert_se(reset_all_signal_handlers() == 0);