Commit Graph

21 Commits

Author SHA1 Message Date
C. McEnroe
55c4755943 Use reallocarray(3) 2021-09-26 17:51:03 -04:00
C. McEnroe
2a7467647e Clean up includes 2020-08-17 22:49:29 -04:00
C. McEnroe
6302579f22 Add drop command 2020-08-16 23:01:25 -04:00
C. McEnroe
daac7db044 Don't set LOGNAME
LOGNAME is a SysV thing. This is a BSD program.
2020-08-16 17:32:23 -04:00
C. McEnroe
7d04a0f5e0 Add privileged services
This allows running things like kfcgi which do their own privilege
dropping and chrooting. Need to update the examples with something like
that.
2020-08-16 17:28:57 -04:00
C. McEnroe
1c4dd05f40 Add 126 to hardcoded stop exits
> If a command is not found, the exit status shall be 127. If the
> command name is found, but it is not an executable utility, the exit
> status shall be 126. Applications that invoke utilities without using
> the shell should use these exit status values to report similar errors.

[1]: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_08_02
2020-08-15 23:11:09 -04:00
C. McEnroe
497cafbf0f Add reset interval after which restart interval is reset 2020-08-15 18:25:40 -04:00
C. McEnroe
92d27e09c3 Implement service status 2020-08-15 15:29:58 -04:00
C. McEnroe
b7e36c72a6 Parse control commands 2020-08-15 15:16:50 -04:00
C. McEnroe
34c39437f2 Read service pipes
Changed line reading functions to return const char * because modifying
the strings by adding '\0' into them screws up the following call.
2020-08-15 14:54:33 -04:00
C. McEnroe
f556af9ad5 Implement non-blocking line-buffered reading 2020-08-15 13:05:31 -04:00
C. McEnroe
f39d916e3a Just use CLOCK_MONOTONIC and clean up includes
CLOCK_MONOTONIC exists everywhere.
2020-08-15 09:53:03 -04:00
C. McEnroe
ba2175979c Reap children 2020-08-15 01:08:01 -04:00
C. McEnroe
e68a29c15e Implement serviceSignal, serviceStop, serviceRestart 2020-08-14 18:11:14 -04:00
C. McEnroe
04ca84acda Switch to timespec for timeouts
Can be passed to ppoll(2) directly.
2020-08-14 17:44:27 -04:00
C. McEnroe
5f47019106 Implement serviceStart 2020-08-14 17:36:31 -04:00
C. McEnroe
ecc818534c Flesh out Service struct 2020-08-14 16:51:32 -04:00
C. McEnroe
96e962a08c Build environment for services 2020-08-14 16:17:29 -04:00
C. McEnroe
e0dab12078 Implement spawntab parsing 2020-08-14 16:00:35 -04:00
C. McEnroe
3b38cfdbfe Implement user and group lookup 2020-08-14 16:00:35 -04:00
C. McEnroe
c9332d07f3 Add spawnd skeleton 2020-08-14 16:00:35 -04:00