fix "first location" bug reported by devel at datenbrei dot de. The first location would overwrite the default value for a server, triggering the "`foo' rule specified more than once" error. This also needed a small tweak on how we match locations to avoid breaking other tests.

add `require client ca' rule to require certs signed by a CA

[cgi] split the query in words if needed and add them to the argv

add the ``entrypoint'' option

restart the daemon instead of kill+start this way we can also test the reload capability!

added ``block return'' and ``strip'' options

cgi now follows globbing rules

print the header in the directory listing

simplify handle_cgi Now that I got rid of the enum+switch, adding more state is easier. Before, we used an hack to remember if we had read the CGI reply or not (c->code = -1). This introduces a new state, handle_cgi_reply that reads the CGI script reply, logs it, and only then switches to handle_cgi. handle_cgi itself is cleaner, now it only reads into c->sbuf and send what it had red. We even get, almost for free, the 42 error. If read exists with -1 or 0 from in handle_cgi_reply, we return a proper error to the client. We can extend this further in the future and also try to validate the CGI reply (for now we're only looking for a \n).

use absolute paths in the regression suite

drop the daemon config in favour of the -f flag Now it daemonize by default when running with a config, unless the -f flag is given.

added support for location blocks

added support for location blocks

test CGI with big files

added index option