Commits
- Commit:
391825e3604deef4c9dc3267dc2b6c89fc79958a
- From:
- Omar Polo <op@omarpolo.com>
- Date:
move parse_portno to gmid.c
it's used only to parse the -p flag. While there add check_port_num
to check the range for the port.
- Commit:
e3b2a0f8de7210c4d403cf4c30d956c34d8c9353
- From:
- Omar Polo <op@omarpolo.com>
- Date:
missing newline in deprecation notice
- Commit:
1bd706dc4150dbcb42d48b98854e46a78ceda861
- From:
- Omar Polo <op@omarpolo.com>
- Date:
drop unsigned
it causes a cascade of warnings on some architectures. Also, for what
we're doing here, the signed/unsigned property isn't important.
- Commit:
67f494057aa3a0a32cc4d948cff2f27ef9de2340
- From:
- Omar Polo <op@omarpolo.com>
- Date:
@-macros, rollback changes to strings and optional semicolons
* expand $-macros as string, only the new @-macros get expanded as-is
* rollback changes to characters allowed in bare strings
* optional semicolons in optnl, useful for readable @-macros
- Commit:
c39be742cf8348232f6a527b19c42f764e80aae0
- From:
- Omar Polo <op@omarpolo.com>
- Date:
parsing: bring lots of goodies from OpenBSD' parse.y
This allows to solve the problem with the \n in the grammar (before
two following macro declaration were treated as invalid. This also
brings in a nice `include' keyword.
- Commit:
efacb859a7ebc65cff1b51cff04cdc2aea3135e1
- From:
- Omar Polo <op@omarpolo.com>
- Date:
change (again) the env/param separator: use '='
Given that env/param are new features of this release, no support for
the "old" syntax is needed.
- Commit:
762b9b991f373e5077d7e49396af62a34fa1c1ff
- From:
- Omar Polo <op@omarpolo.com>
- Date:
add => in env/param and `port' between hostname and port for fastcgi
In the same spite of the last commit, add the missing separators
between strings to avoid the auto-concat pitfalls. `=>' is used to
separate between `env' and `param' arguments, while for `fastcgi' the
keyword `port' is required between the hostname/ip address and the
port (if provided).
Since `env', `param' and `fastcgi' are all new stuff, there's no need
to keep compatibility.
- Commit:
ff954a3e7641e83cca043ecc30789132478c7acd
- From:
- Omar Polo <op@omarpolo.com>
- Date:
typo...
- Commit:
d19951cf0373f6217bce2f97489bc46d6a8837ef
- From:
- Omar Polo <op@omarpolo.com>
- Date:
rename `mime MIME EXT' to `map MIME to-ext EXT'
With the newish automatic string concatenation, options like `mime'
that accepts two strings as parameter start to become ambiguous: which
strings gets concatenated? Instead of trying to document in the
manpage which argument(s) is subject to string concatenation, do the
concat always and introduce a separator. In the case of mime,
`to-ext' now acts as a separator to distinguish. While there, also
use a new keyword because it sounds better.
It's dead-easy to upgrade to the new configuration, possibly with some
sed magic, but for the moment the old `mime' form is preserved: (with
a warning!) Will be dropped in the next release.
- Commit:
d93c819182ba6decf8f7f1787c6ba416f76c315a
- From:
- Omar Polo <op@omarpolo.com>
- Date:
use bsearch to match the keywords
not that it's a bottleneck, but it's fancier this way.
- Commit:
bfb076ed7ee61a93cc6ae701b07c3d3bc7a006aa
- From:
- Omar Polo <op@omarpolo.com>
- Date:
don't expand macros inside the quotes
Now that we have this auto concat string thingy, macros can simply
expand to standalone strings in place, as single words.
Forgot to point it out in previous commits, but now we can
cert = "/etc/keys"
server "foo" {
cert $cert "/foo.crt"
...
}
- Commit:
7252049dd77e4927049f698d06d7ebc8fbc3e3df
- From:
- Omar Polo <op@omarpolo.com>
- Date:
align
- Commit:
98f521782249d75bc807e5686266f65850098fd8
- From:
- Omar Polo <op@omarpolo.com>
- Date:
[config] concat two or more strings next to each others
- Commit:
6b86655a10753eae668e839207692d9d43138679
- From:
- Omar Polo <op@omarpolo.com>
- Date:
don't require the strict order macro > options > servers
- Commit:
3b21cca385c403247960cfe9385dda1d56f28670
- From:
- Omar Polo <op@omarpolo.com>
- Date:
allow to define macros in the config file
Macros can be defined at the top of the configuration file:
dir = "/var/gemini"
cert = "/etc/keys"
and re-used later, for example
server "foo" {
root "$dir/foo" # -> /var/gemini/foo
cert "$cert/foo.pem" # -> /etc/keys/foo.pem
}