diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2025-08-29 21:45:42 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska-skaware@skarnet.org> | 2025-08-29 21:45:42 +0000 |
| commit | 1679a62c2cd2cdfed10a0f699cbc29e123dcb4e2 (patch) | |
| tree | ca69a633bcba73f025da8a51c32f4944fd44e3a4 /src/config | |
| parent | c548d06d3857295b72c1f993d15480a21935a9a7 (diff) | |
| download | tipidee-1679a62c2cd2cdfed10a0f699cbc29e123dcb4e2.tar.gz | |
Add realtime and norealtime options, cork/uncork responses
Diffstat (limited to 'src/config')
| -rw-r--r-- | src/config/lexparse.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/config/lexparse.c b/src/config/lexparse.c index e87c501..b8d8a5d 100644 --- a/src/config/lexparse.c +++ b/src/config/lexparse.c @@ -55,6 +55,8 @@ enum directivevalue_e T_NOAUTH, T_AUTOCHUNK, T_NOAUTOCHUNK, + T_REALTIME, + T_NOREALTIME, T_FILETYPE, T_CUSTOMRESPONSE } ; @@ -365,7 +367,7 @@ static inline void parse_rproxy (char const *s, size_t const *word, size_t n, ch static void parse_bitattr (char const *s, size_t const *word, size_t n, char const *domain, size_t domainlen, mdt const *md, uint8_t bit, int h) { - static char const *const attr[3][2] = { { "noncgi", "cgi" }, { "nonnph", "nph", }, { "noauth", "basic-auth" } } ; + static char const *const attr[4][2] = { { "noncgi", "cgi" }, { "nonnph", "nph", }, { "noauth", "basic-auth" }, { "norealtime", "realtime" } } ; if (n != 1) strerr_dief8x(1, "too ", n > 1 ? "many" : "few", " arguments to directive ", attr[bit][h], " in file ", g.storage.s + md->filepos, " line ", md->linefmt) ; if (!domain) @@ -505,9 +507,11 @@ static inline void process_line (char const *s, size_t const *word, size_t n, st { .name = "noautochunk", .value = T_NOAUTOCHUNK }, { .name = "noncgi", .value = T_NONCGI }, { .name = "nonnph", .value = T_NONNPH }, + { .name = "norealtime", .value = T_NOREALTIME }, { .name = "noredirect", .value = T_NOREDIRECT }, { .name = "nph", .value = T_NPH }, { .name = "nph-prefix", .value = T_NPHPREFIX }, + { .name = "realtime", .value = T_REALTIME }, { .name = "redirect", .value = T_REDIRECT }, { .name = "rproxy", .value = T_RPROXY }, } ; @@ -606,6 +610,12 @@ static inline void process_line (char const *s, size_t const *word, size_t n, st case T_NOAUTOCHUNK : parse_bitattr(s, word, n, domain->s, domain->len, md, 3, 0) ; break ; + case T_REALTIME : + parse_bitattr(s, word, n, domain->s, domain->len, md, 4, 1) ; + break ; + case T_NOREALTIME : + parse_bitattr(s, word, n, domain->s, domain->len, md, 4, 0) ; + break ; case T_FILETYPE : parse_filetype(s, word, n, domain->s, domain->len, md) ; break ; |
