Implement exec.
Change-Id: I20329bc9b378479d745b498d6a00eca0872cd5ab
diff --git a/init/builtins.cpp b/init/builtins.cpp
index 9f3dcc1..03b143d 100644
--- a/init/builtins.cpp
+++ b/init/builtins.cpp
@@ -172,11 +172,16 @@
return 0;
}
-int do_exec(int nargs, char **args)
-{
- return -1;
+int do_exec(int nargs, char** args) {
+ service* svc = make_exec_oneshot_service(nargs, args);
+ if (svc == NULL) {
+ return -1;
+ }
+ service_start(svc, NULL);
+ return 0;
}
+// TODO: remove execonce when exec is available.
int do_execonce(int nargs, char **args)
{
pid_t child;