Commits


make the various strings in the config fixed-length will help in future restructuring to have fixed-size objects.


retire fcgi' prog field spawning programs was a hidden feature used only for testing. It's gross and when got removed, I forgot to remove the field as well.


specify custom version strings for the various cmds


remove remnats tentacles of the executor process


remove unused entrypoint field ventige of the cgi support (and lack of url rewriting)


drop cgi vestiges from the struct host The `env' list is no longer used since CGI scripts were removed


retire the deprecated `mime' and `map' config options


make the mime types fixed-sized too


make config fields `chroot' and `user' fixed-size


optionally disable the sandbox on some systems The FreeBSD and Linux' sandbox can't deal with `fastcgi' and `proxy' configuration rules: new sockets needs to be opened and it's either impossible (the former) or a huge pain in the arse (the latter). The sandbox is still always used in case only static files are served.


gc FILE_EXECUTABLE


gc sandbox_executor_process


get rid of the CGI support I really want to get rid of the `executor' process hack for CGI scripts and its escalation to allow fastcgi and proxying to work on non-OpenBSD. This drops the CGI support and the `executor' process entirely and is the first step towards gmid 2.0. It also allows to have more secure defaults. On non-OpenBSD systems this means that the sandbox will be deactivated as soon as fastcgi or proxying are used: you can't open sockets under FreeBSD' capsicum(4) and I don't want to go thru the pain of making it work under linux' seccomp/landlock. Patches are always welcome however. For folks using CGI scripts (hey, I'm one of you!) not all hope is lost: fcgiwrap or OpenBSD' slowcgi(8) are ways to run CGI scripts as they were FastCGI applications. fixes for the documentation and to the non-OpenBSD sandboxes will follow.


encode file names in the directory index Spotted the hard way by cage


sort the MIME mappings and do a binary search to match