Commit Briefs

Omar Polo

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.



Omar Polo

const-ify some tables

matches found with % grep -R '=[ ]*{' . | fgrep -v const


Omar Polo

add type { ... } block to define mime types mapping

The `map' rule is powerful but quite annoying to use if you have/need lots of entries (and clutters the configuration file too.) The `type' block is blatantly stolen from httpd(8) and allows for a way more nice usage: type { include "/usr/share/misc/mime.types" } or even type { text/markdown md markdown text/x-perl pl pm # ... }



Omar Polo

include gmid.h before other headers to get all the prototypes

> implicit declaration of function 'asprintf'; did you mean 'vsprintf'?


Omar Polo

allow using a custom hostname for SNI during proxying

add a `sni' option for the `proxy' block: the given name is used instead of the one extracted by the `relay-to' rule.


Omar Polo

add `require client ca' for proxy blocks

refactor the code that calls validate_against_ca into an helper function to reuse it in both apply_require_ca and (optionally) in apply_reverse_proxy.


Omar Polo

proxy: allow multiple proxy blocks, matching options and validations

as a side effect the order of the content of a server block is relaxed: options, location or proxy blocks can be put in any order.


Omar Polo

bump copyright year :)



Omar Polo

move %token USER to its own line


Omar Polo

plug some memory leaks in config parsing

I forgot to free some strings when they're no more used.