diff options
Diffstat (limited to 'toys/android/start.c')
-rw-r--r-- | toys/android/start.c | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/toys/android/start.c b/toys/android/start.c deleted file mode 100644 index 5df847a9..00000000 --- a/toys/android/start.c +++ /dev/null @@ -1,59 +0,0 @@ -/* start.c - Start/stop system services. - * - * Copyright 2016 The Android Open Source Project - -USE_START(NEWTOY(start, "", TOYFLAG_USR|TOYFLAG_SBIN)) -USE_STOP(NEWTOY(stop, "", TOYFLAG_USR|TOYFLAG_SBIN)) - -config START - bool "start" - depends on TOYBOX_ON_ANDROID - default y - help - usage: start [SERVICE...] - - Starts the given system service, or netd/surfaceflinger/zygotes. - -config STOP - bool "stop" - depends on TOYBOX_ON_ANDROID - default y - help - usage: stop [SERVICE...] - - Stop the given system service, or netd/surfaceflinger/zygotes. -*/ - -#define FOR_start -#include "toys.h" - -static void start_stop(int start) -{ - char *property = start ? "ctl.start" : "ctl.stop"; - // null terminated in both directions - char *services[] = {0,"netd","surfaceflinger","zygote","zygote_secondary",0}, - **ss = toys.optargs; - int direction = 1; - - if (getuid()) error_exit("must be root"); - - if (!*ss) { - // If we don't have optargs, iterate through services forward/backward. - ss = services+1; - if (!start) ss = services+ARRAY_LEN(services)-2, direction = -1; - } - - for (; *ss; ss += direction) - if (__system_property_set(property, *ss)) - error_exit("failed to set property '%s' to '%s'", property, *ss); -} - -void start_main(void) -{ - start_stop(1); -} - -void stop_main(void) -{ - start_stop(0); -} |