diff options
| author | hunter@kvog.sh <hunter@kvog.sh> | 2026-02-06 16:54:54 -0600 |
|---|---|---|
| committer | hunter@kvog.sh <hunter@kvog.sh> | 2026-02-06 16:54:54 -0600 |
| commit | c41d3de8eeb16773cd326f8ea6cfbf575ce08b75 (patch) | |
| tree | 67e8b9bdc84b44857437a86e5e1404724cbf188d /rushmore-linux/rlinit | |
| parent | 1f80fdb94a34f5c63a354da86347eaef1ca1c248 (diff) | |
rushmore-linux
Diffstat (limited to 'rushmore-linux/rlinit')
| -rw-r--r-- | rushmore-linux/rlinit/rlinit.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/rushmore-linux/rlinit/rlinit.c b/rushmore-linux/rlinit/rlinit.c new file mode 100644 index 0000000..21cf2af --- /dev/null +++ b/rushmore-linux/rlinit/rlinit.c @@ -0,0 +1,24 @@ +#include <unistd.h> +#include <sys/mount.h> +#include <sys/wait.h> + +int main(void) +{ + mount("proc", "/proc", "proc", 0, 0); + mount("sysfs", "/sys", "sysfs", 0, 0); + mount("devtmpfs", "/dev", "devtmpfs", 0, 0); + + write(1, "rlinit: starting rlwsd\n", 23); + + pid_t pid = fork(); + if (pid == 0) { + char *argv[] = { (char*)"/rlwsd", 0 }; + execv(argv[0], argv); + _exit(127); + } + + int st = 0; + waitpid(pid, &st, 0); + write(1, "rlinit: rlwsd exited\n", 21); + for (;;) pause(); +} |