Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
minimal init daemon by rich felker, author of musl libc
#define _XOPEN_SOURCE 700
#include <signal.h>
#include <unistd.h>
int main()
{
sigset_t set;
int status;
if (getpid() != 1) return 1;
sigfillset(&set);
sigprocmask(SIG_BLOCK, &set, 0);
if (fork()) for (;;) wait(&status);
sigprocmask(SIG_UNBLOCK, &set, 0);
setsid();
setpgid(0, 0);
return execve("/etc/rc", (char *[]){ "rc", 0 }, (char *[]){ 0 });
}
@oxr463

This comment has been minimized.

Copy link

@oxr463 oxr463 commented Jan 10, 2020

License?

@rofl0r

This comment has been minimized.

Copy link
Owner Author

@rofl0r rofl0r commented Jan 11, 2020

http://ewontfix.com/14/

... explicitly licensing it under the following terms (standard MIT license)

@handchin

This comment has been minimized.

Copy link

@handchin handchin commented Feb 16, 2020

#include <sys/wait.h> should be added after the third line to stop the warnings.

@startredirect

This comment has been minimized.

Copy link

@startredirect startredirect commented Jul 23, 2021

I concur with ktr in regards to disliking those particular species.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment