summary refs log tree commit diff
Commit message (Collapse)AuthorAge
* Don't parse config until after daemonizationJune McEnroe2021-09-26
| | | | | | | And consequently, until after pledge(2) and unveil(2) on OpenBSD. Replace parsing before daemonization with a simple check that the file is readable. There's not much that can go wrong in parsing anyway.
* OpenBSD: Simplify pledge(2) and unveil(2) strategyJune McEnroe2021-09-26
|
* Fix inverted exec prepend logicJune McEnroe2021-09-25
| | | | Well that's embarrassing.
* Remove freenodeJune McEnroe2021-05-19
|
* Skip leading whitespace on prepends and commands 1.3June McEnroe2021-03-01
|
* Only prepend exec if command line doesn't contain ;&|()June McEnroe2021-03-01
|
* Exit with EX_TEMPFAIL when watching filesJune McEnroe2021-03-01
| | | | | | | Reason being that if a file disappears and it takes longer for it to reappear than the default restart interval, the service would just get stopped. Treat an initially missing file the same as a file that gets deleted.
* Add -d flag to catsit-watchJune McEnroe2021-02-27
|
* Add -a to catsit-watchJune McEnroe2021-02-27
|
* Add catsit-timer utilityJune McEnroe2021-02-25
|
* Add catsit-watch utilityJune McEnroe2021-02-25
|
* Drop pledge privileges after daemonization 1.2June McEnroe2021-02-01
|
* Remove use of "%n"June McEnroe2021-02-01
| | | | | | | https://cvsweb.openbsd.org/src/lib/libc/stdio/vfprintf.c?rev=1.79&content-type=text/x-cvsweb-markup I think this is silly, as I've said elsewhere, and it's a shame because that was clearly the best way to write this. Oh well.
* Check signals first in the loopJune McEnroe2021-02-01
| | | | | | | Signals need to be checked first in the loop to catch any that were delivered between setting up the signals handlers and entering the loop, i.e. in the time it takes to initially start each of the services.
* Log a message when stopping a service waiting to restart 1.1June McEnroe2020-12-15
| | | | | It's a little annoying to have to special-case this, but otherwise there is no confirmation in the log that the restart won't still happen.
* Refactor unveil calls so errors can be reported properlyJune McEnroe2020-11-10
|
* Do not increment signalsJune McEnroe2020-10-27
| | | | | No need to do a read and a write... and it's declared volatile so maybe that's even worse? I don't even know, but there's no point.
* Only look up group if one is namedJune McEnroe2020-10-23
|
* Remove default defines of RUNDIR, ETCDIRJune McEnroe2020-10-23
|
* Set shell scripts executable in buildJune McEnroe2020-10-23
|
* Humanize milliseconds if interval is less than 1sJune McEnroe2020-10-20
| | | | | The intervals are configurable in milliseconds so humanize should be able to display at that precision.
* Humanize restart intervalJune McEnroe2020-10-20
|
* Document default catsit.conf location on OpenBSD 1.0June McEnroe2020-08-17
|
* Template catsit script with RUNDIRJune McEnroe2020-08-17
|
* Clean up includesJune McEnroe2020-08-17
|
* Log service uptime in statusJune McEnroe2020-08-17
|
* Add copy of AGPLv3June McEnroe2020-08-17
|
* Document target platformsJune McEnroe2020-08-17
| | | | I really want to avoid adding a README...
* Remove useless setprogname callJune McEnroe2020-08-17
|
* Add OpenBSD rc scriptJune McEnroe2020-08-17
|
* Use BSD make syntax to configure for OpenBSDJune McEnroe2020-08-17
|
* Use pledge(2) and unveil(2) on OpenBSDJune McEnroe2020-08-17
|
* Use a separate fd for the fake fifo writerJune McEnroe2020-08-17
| | | | | | | From OpenBSD open(2): > A FIFO should either be opened with O_RDONLY or with O_WRONLY. The > behavior for opening a FIFO with O_RDWR is undefined.
* Use a non-blocking lock on the PID fileJune McEnroe2020-08-17
|
* Truncate PID file after opening and lockingJune McEnroe2020-08-17
|
* Simplify parseConfig error handlingJune McEnroe2020-08-17
|
* Properly handle command line truncationJune McEnroe2020-08-17
| | | | Unlikely to happen since ARG_MAX is 256K, but...
* Flesh out documentation and improve examplesJune McEnroe2020-08-17
|
* Add drop commandJune McEnroe2020-08-16
|
* Only call setgroups as rootJune McEnroe2020-08-16
| | | | setgroups fails when already running as a user.
* Don't set LOGNAMEJune McEnroe2020-08-16
| | | | LOGNAME is a SysV thing. This is a BSD program.
* Add privileged servicesJune McEnroe2020-08-16
| | | | | | This allows running things like kfcgi which do their own privilege dropping and chrooting. Need to update the examples with something like that.
* Clear groups list for servicesJune McEnroe2020-08-16
|
* Use process groups for servicesJune McEnroe2020-08-16
| | | | This lets us properly signal services with child processes of their own.
* Set title after reloadJune McEnroe2020-08-16
|
* Set title on control commandsJune McEnroe2020-08-15
| | | | If a control command starts a service, the title should be updated.
* Add 126 to hardcoded stop exitsJune McEnroe2020-08-15
| | | | | | | | | > 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
* Remove EX_CONFIG from default stopexitsJune McEnroe2020-08-15
| | | | I've used it for "remote" configuration which could change.
* Avoid "control named pipe" phraseJune McEnroe2020-08-15
|
* Check if pipe is writable in wrapperJune McEnroe2020-08-15
|