Commit Briefs
provide a more usual fatal
fatal usually appends the error string. Add 'fatalx' that doesn't. Fix callers and move the prototypes to log.h
hardcode the mapping text/gemini -> .gmi/.gemini
It's still possible to override this automatic mapping by just adding an entry like application/octet-stream gemini gmi in the `types' block.
allow add_mime to fail
add_mime nows allocate dinamically copies of the passed strings, so that we can actually free what we parse from the config file. This matters a lot especially with lengthy `types' block: strings that reach the internal mapping are never free'd, so every manual addition is leaked.
const-ify some tables
matches found with % grep -R '=[ ]*{' . | fgrep -v const
fix various compilation errors
Include gmid.h as first header in every file, as it then includes config.h (that defines _GNU_SOURCE for instance). Fix also a warning about unsigned vs signed const char pointers in openssl.