diff options
Diffstat (limited to 'main.c')
| -rw-r--r-- | main.c | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/main.c b/main.c new file mode 100644 index 0000000..8a87442 --- /dev/null +++ b/main.c @@ -0,0 +1,40 @@ +#include <string.h> +#include <errno.h> +#include <stdio.h> + +#include "fdwatcher.h" +#include "logging.h" +#include "network.h" +#include "parent.h" +#include "child.h" + +int +isChildProcess(int argc, char **argv) +{ + if (argc < 3) { + return 0; + } + + if (strcmp(argv[1], "childprocess") != 0) { + return 0; + } + + return 1; +} + +int +main(int argc, char **argv) +{ + #ifdef __OpenBSD__ + aura_printf("hello, OpenBSD user. for paranoia's sake, pledge(3) will be run.\n"); + pledge("stdio inet", "stdio inet"); + aura_printf("yippie\n"); + #endif + + if (isChildProcess(argc, argv)) { + aura_printf("child process\n"); + return childProcessMain(argc, argv); + } + + return parentProcessMain(); +} |
