commit - 39f32a8cb2d67c53ffdc7dabda62007ebcefd13b
commit + 782443d4c1c104013cae4ab9cb693275003a396f
blob - 9ba61d37637b0bb62d90fcd2821475b4bcd990ab
blob + 746039c12f247f72374cc49c9792c96bcbe0ed52
--- main.c
+++ main.c
/*
* We start out in privileged mode.
* We are already running as root as per -e option handling.
+ * The privexec flag also affects the behaviour of commands
+ * such as 'disable' and 'quit'. 'disable' will pass control
+ * back to the parent process which runs in non-privileged
+ * mode. "quit' does the same with a special exit code to let
+ * the parent know that it should exit immediately.
*/
priv = 1;
+ } else if (getuid() == 0) {
+ /*
+ * Root users always start out in privileged mode.
+ * They can use 'disable' if they want to exit priv mode.
+ */
+ priv = 1;
}
top = setjmp(toplevel) == 0;