“Space-dye Vest”
NB: there's an error in the man page, a 1.7.1 version with fixes is being worked on.
Starting from this version gmid doesn't depend on lex anymore, but
yacc is still needed.
New features
- initial fastcgi support! (it's still young!)
- added user-defined macros, either via
-Dname=val
or directly in
the configuration file. - new
include
keyword to load additional configuration files. - new
env
rule to define environment vars for CGI scripts. - new
alias
rule to define hostname aliases for a server. - allow
root
to be specified per-location block. - pidfile support with the new
-P
cli flag. - define
TLS_VERSION
,TLS_CIPHER
andTLS_CIPHER_STRENGTH
for CGI
scripts.
Improvements
- remove limits on the number of virtual hosts and location blocks
that can be defined. - print the datetime when logging to stderr.
- use
text/x-patch
for.patch
and.diff
files. - sort the auto index alphabetically.
- various improvements to the log management.
- drop the dependency on lex.
- added
--help
as synonym of-h
and-V
/--version
to print the
version. - c-like handling of strings in the configuration file: when two or
more strings are next to each-others, are automatically joined into
a single string. This is particularly useful with$
-macros.
Bug fixes
- correctly handle CGI scripts that replies with the maxium header
length allowed. - fixed the
static
target. - fixed recursive mkdirs for configless mode (i.e. create
~/.local/share/gmid
) - logs sent to syslog now have proper priority (before every message
ended up as LOG_CRIT). Found by Anna "CyberTailor", thanks! - ensure
%p
(path) is always absolute inblock return
rules. - fix automatic certificate generation, it caused problems on some
adroid devices. Found by Gnuserland, thanks! - document the
log
rule. - the seccomp filter was reworked and now it's known to work properly
on a vast range of architectures (to be more specific: all the
architectures supported by alpine linux), see github issue #4.
Prompted and tested by @begss, thanks! - various improvements to the configure script, notified and fixed by
Anna "CyberTailor", thanks! - added a timeout to the regression tests.
Breaking changes
- if duplicate rules are found in the configuration file, an error is
now raised instead of silently using only the last value. - (sort of)
gg
moved toregress
as it's only used in the
regression suite. - (notice) the
mime "mime-type" "extension"
rule was deprecated and
replaced by the newmap "mime-type" to-ext "extension"
. The
mime
rule will be removed in a future version because its syntax
is incompatible with the new string auto-concat mechanism.