Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-08-03 | prepare release 2.12.1 | Omar Polo | |
2024-08-03 | proxy-protocol: accept cross-family proxying | Omar Polo | |
Due to a strict interpretation of the spec if "TCP4" is used we expect two ipv4 addresses (and similar for "TCP6" and ipv6 addresses). However, the family specified in the proxy header matters only for the first address (the source), not the destination! After all, it's not strange to proxy from/to ipv4 and ipv6. Use getaddrinfo(NI_NUMERICHOST) to parse the IP addresses since inet_pton() is too strict. | |||
2024-08-03 | remove unused argument from check_port_v1 | Omar Polo | |
2024-08-03 | sync changelog | Omar Polo | |
2024-08-03 | gg: support IPv6 addresses in -P | Omar Polo | |
2024-08-03 | reword | Omar Polo | |
2024-08-03 | remove useless debugging log | Omar Polo | |
2024-08-03 | main_reload: save and restore prefork | Omar Polo | |
We only honour the prefork at startup time. | |||
2024-08-03 | regress: fix quit() | Omar Polo | |
2024-08-03 | regress: simplify code and fix comment | Omar Polo | |
we're not running under `set -e' since a long time. | |||
2024-08-03 | gmid.conf.5: some love for the EXAMPLES section | Omar Polo | |
Few grammar and style fixes, plus add an example about logging on a file. Prodded by https://github.com/omar-polo/gmid/issues/34 | |||
2024-08-03 | add support for using the proxy protocol v1 when proxying too | Omar Polo | |
This is symmetrical to the support for *incoming* requests. The new regress case uses this to proxy to itself using the proxy-protocol v1. Fixes https://github.com/omar-polo/gmid/issues/31 | |||
2024-08-03 | regress: run the proxies on a different port | Omar Polo | |
Soon we may want to run (some) proxies with the proxy-protocol so we can't reuse the same port. | |||
2024-08-03 | proxy_init: simplify logic | Omar Polo | |
2024-08-03 | regress: fix test_high_prefork() | Omar Polo | |
we don't load the prefork dynamically, only the prefork at startup is honoured, so fix the test by stopping gmid so it is started with the right prefork. | |||
2024-08-03 | fmt | Omar Polo | |
2024-07-08 | change the type for read_pos | Omar Polo | |
2024-07-08 | proxy protocol v1: handle EOF and short reads | Omar Polo | |
2024-07-08 | remove trailing whitespaces and extra braces | Omar Polo | |
2024-07-08 | move some variables to function scope | Omar Polo | |
2024-07-08 | fix left computation | Omar Polo | |
2024-07-08 | no need to clear error before calling read(2) | Omar Polo | |
There are only a few functions (so badly designed) that need to have errno cleared beforehand (hello, strtoll!). read(2) is not among these. | |||
2024-07-08 | s/should_buffer/proxy_proto | Omar Polo | |
2024-07-08 | fmt | Omar Polo | |
2024-07-06 | remove debug log | Omar Polo | |
2024-07-02 | gemexp: add -v | Omar Polo | |
2024-07-02 | proxy: inline the `goto retry' | Omar Polo | |
2024-07-02 | add instructions for fuzzying | Omar Polo | |
2024-07-02 | fuzzying the proxy protocol too | Omar Polo | |
2024-07-02 | add a few tests found by afl | Omar Polo | |
2024-07-02 | initial support for fuzzying | Omar Polo | |
2024-06-28 | document proxy-v1 | Omar Polo | |
2024-06-28 | show the conf path in the README.md | Omar Polo | |
2024-06-17 | titan: add missing include | Omar Polo | |
2024-06-17 | proxy-proto: ensure there's a space after "TCP4/6" | Omar Polo | |
2024-06-17 | replace asserts with error returns | Omar Polo | |
2024-06-17 | inline PROXY_PROTO_PARSE_* and EXPECT_SUCCESS macros | Omar Polo | |
2024-06-17 | invert the arguments in some comparisons | Omar Polo | |
2024-06-17 | whitespace and minor style nits | Omar Polo | |
2024-06-17 | add a proxy-v1 keyword to enable the proxy protocol handling | Omar Polo | |
2024-06-17 | sync .d includes and DISTFILES | Omar Polo | |
2024-06-17 | fix proxy_proto_v1_string | Omar Polo | |
pass to inet_pton the full length of the buffer we're printing to. It'll take care of NUL-terminating the string. If we subtract one it may fail to print some IPv6 addresses. Also, no need to NUL-terminate it again! | |||
2024-06-17 | add support for the proxy protocol v1 | Christoph Liebender | |
This allows to use proxies like nginx or haproxy in front of gmid and still have the correct information about the originating client. This will need explicit opt-in via the `proxy-v1' listen flag which will be added in a follow-up commit. Merges https://github.com/omar-polo/gmid/pull/30 | |||
2024-06-17 | make gemexp verbose | Christoph Liebender | |
2024-06-17 | titan: introduce xasprintf | Omar Polo | |
2024-06-17 | titan: improve error checking | Omar Polo | |
Not only the reading, but the writing can fail too so bail out early in that case. Also, even if it's just a pro forma, check the error flag on stdin too. | |||
2024-06-17 | comment out stravis instead of adding -Wno-* for stupid gcc | Omar Polo | |
gcc has a broken error checking for 'use-after-free' that can be triggered by perfectly valid code. Since it's in a function (stravis) we don't use, comment it out. | |||
2024-06-17 | log configure invocation and uname in config.log | Omar Polo | |
2024-06-14 | style | Omar Polo | |
2024-06-14 | propagate prefork value | Omar Polo | |
otherwise the child processes still believet the prefork value is 3 and can end up reading/writing out of bounds when setting up the sockets. Actually, server processes shouldn't create pipes to other servers, but this is left for a follow-up diff. Issue reported by la ninpre, thank you! |