Commit Briefs
conf & vhosts
* gmid.c (main): changed behaviour: daemon off by default (main): changed -c in -C (cert option) (main): changed -k in -K (key option, for consistency with -C) (main): added -c to load a configuration (main): certs, key and doc (-C -K and -d) doesn't have a default value anymore (handle_handshake): add vhosts support
track handshakes
This alter the current state machine by adding S_HANDSHAKE as the initial state. There, we ensure we did the handshake and we check SNI. ATM we simply continue in S_OPEN, but later we can add virtual host checks there, and skip to S_INITIALIZING with an error state if the client is accessing a wrong host.
fix build on non-OpenBSD systems (tags/1.4.1)
not every system has a __dead attribute for functions. This fixes the build on FreeBSD.
reject non-gemini protocols with 53 (tags/1.4)
macro reordering
and while there replace SAFE_SETENV with an inline function. LOG is more difficult to transform into an inline function, given the string concatenations it does. The other LOG* and FATAL macros are fine as they already are.
switch to Bjoern Hoehrmann UTF-8 decoder
It's correct, while my hacked valid_multibyte_utf8 would allow things that aren't technically UTF8.