aboutsummaryrefslogtreecommitdiff
path: root/proxy.c
AgeCommit message (Collapse)Author
2024-08-03add support for using the proxy protocol v1 when proxying tooOmar 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-03proxy_init: simplify logicOmar Polo
2024-07-02proxy: inline the `goto retry'Omar Polo
2024-05-25s/MIN/MINIMUM/gOmar Polo
2023-10-18copyright++Omar Polo
2023-08-09don't call client_close() from fcgi/proxy bev handlersOmar Polo
We might end up calling client_close() from start_reply(), but that will free the fcgi/proxy bufferevent while they're still used on the stack. Instead, start_reply() only sets REQUEST_DONE and exits, returning the error eventually, so callers know when to stop.
2023-07-01typoOmar Polo
2023-06-06switch to the more usual log.cOmar Polo
2023-06-06rename log.[ch] to logger.[ch]Omar Polo
2023-06-05provide a more usual fatalOmar Polo
fatal usually appends the error string. Add 'fatalx' that doesn't. Fix callers and move the prototypes to log.h
2022-11-17always cast is*() arguments to unsigned charOmar Polo
2022-10-05make the various strings in the config fixed-lengthOmar Polo
will help in future restructuring to have fixed-size objects.
2022-07-04copyright yearsOmar Polo
2022-03-19const-ify some tablesOmar Polo
matches found with % grep -R '=[ ]*{' . | fgrep -v const
2022-01-30allow using a custom hostname for SNI during proxyingOmar Polo
add a `sni' option for the `proxy' block: the given name is used instead of the one extracted by the `relay-to' rule.
2022-01-27improve proxy error pathOmar Polo
properly release everything when during client_close if the request was managed by a proxy.
2022-01-27set REQUEST_PROXY only when proxy_init is successfulOmar Polo
2022-01-02proxy: allow multiple proxy blocks, matching options and validationsOmar Polo
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.
2022-01-01allow to disable TLS when proxying requestsOmar Polo
2022-01-01add `protocols' option to `proxy' ruleOmar Polo
2022-01-01add `verifyname' option for `proxy' ruleOmar Polo
2022-01-01simplify the proxying codeOmar Polo
it doesn't make any sense to keep the proxying info per-location: proxying only one per-vhost. It can't work differently, it doesn't make sense anyway.
2022-01-01support optional client certificate for proxy ruleOmar Polo
2021-12-29add ability to proxy requestsOmar Polo
Add to gmid the ability to forwad a request to another gemini server and thus acting like a reverse proxy. The current syntax for the config file is server "example.com" { ... proxy relay-to host:port } Further options (like the use of custom certificates) are planned. cf. github issue #7