diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2025-06-25 19:49:01 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska@appnovation.com> | 2025-06-25 19:49:01 +0000 |
| commit | 9acee22dd82472bf408204a066476334c3568e87 (patch) | |
| tree | 2ba82c4cba39e633dcbf422f67cc3fe27f87a8df /src/tipideed/tipideed.c | |
| parent | 592c13a20f5ece4a596635c75bf096ccd3dfa6b8 (diff) | |
| download | tipidee-9acee22dd82472bf408204a066476334c3568e87.tar.gz | |
Add rproxy
Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'src/tipideed/tipideed.c')
| -rw-r--r-- | src/tipideed/tipideed.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/tipideed/tipideed.c b/src/tipideed/tipideed.c index c32cd2c..6cfd4ec 100644 --- a/src/tipideed/tipideed.c +++ b/src/tipideed/tipideed.c @@ -233,7 +233,7 @@ static inline int serve (tipidee_rql *rql, char const *docroot, char *uribuf, ti memcpy(fn + docrootlen, rql->uri.path, pathlen) ; fn[docrootlen + pathlen] = 0 ; - /* Redirection */ + /* Redirection or reverse proxy */ if (rql->m != TIPIDEE_METHOD_OPTIONS) { @@ -242,7 +242,8 @@ static inline int serve (tipidee_rql *rql, char const *docroot, char *uribuf, ti if (e == -1) die500sys(rql, 111, docroot, "get redirection data for ", fn) ; if (e) { - respond_30x(rql, &rd) ; + if (rd.type & 32) rproxy(rql, &rd, docroot, hdr, body, bodylen) ; + else respond_30x(rql, &rd) ; return 0 ; } } |
