0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-03 04:18:55 +01:00
Commit graph

138 commits

Author SHA1 Message Date
Jason Volk
ee59e76305 ircd::http: Fix headers view parse to cover expected trailing crlf. 2022-06-22 15:33:38 -07:00
Jason Volk
01c2c55054 ircd::http: Simplify line ctor; move eoi into grammar. 2022-06-22 15:31:46 -07:00
Jason Volk
5faadaa000 ircd::http: Fix binary op (gnu++20). 2022-06-19 20:14:23 -07:00
Jason Volk
85aa4bd8c6 ircd::http: Adjust grammar for cloudflare. 2022-06-17 21:34:02 -07:00
Jason Volk
398c1d2213 ircd::http: Optimize expressions; modernize grammars; minor cleanup. 2022-06-17 21:34:02 -07:00
Jason Volk
0aeaae9584 ircd::http: Remove switch default to precipitate unhandled warning. 2022-06-17 21:11:54 -07:00
Jason Volk
1055d66f94 Modernize various parser grammars; remove empty ctors. 2022-06-17 21:11:53 -07:00
Jason Volk
be8bb88358 ircd::http: Move insignificant TLS buffer to stack. 2022-06-17 21:11:53 -07:00
Jason Volk
3d672ab9bc Rename common instance variables of window_buffer for clarity. 2022-06-17 21:11:53 -07:00
Jason Volk
a1420b25a3 ircd::http: Add log level severity(category) convenience tool; tweak category table. 2021-02-03 18:01:15 -08:00
Jason Volk
00bd72e3ff ircd::http: Fix erroneous binding name. 2020-11-27 16:58:20 -08:00
Jason Volk
c9b1b37505 ircd::http: Increase buffer size; report proper error for exceeding. 2020-11-05 22:10:54 -08:00
Jason Volk
7e22894437 ircd::http: Add default User-Agent header if none specified. 2020-10-25 00:09:59 -07:00
Jason Volk
e6e5b14b93 ircd::http: Assert enough buffer for valid chunk size value. 2020-08-28 05:18:57 -07:00
Jason Volk
6ec9b2a783 ircd: Specify explicit noexcept for gcc-10 issue. 2020-07-11 17:57:33 -07:00
Jason Volk
2a5c234d76 ircd::http: Assert supplied header string is terminated by caller. 2020-06-12 18:18:57 -07:00
Jason Volk
09fe270c54 ircd::http: Add status category enum; move static grammars out of function; minor reorg enums. 2020-06-12 17:01:09 -07:00
Jason Volk
b59337eb78 ircd::spirit: Consolidate entry to spirit through wrapper templates.
ircd::spirit: More aggressive inlining of interface templates; symbol visibility
2020-06-11 03:51:49 -07:00
Jason Volk
cb7e90fc0f ircd::http: Use unsigned 64bit; add sanity ceiling for content-length. 2020-05-05 17:40:50 -07:00
Jason Volk
63e0543175 ircd::http: Use unsigned 32bit type for chunk size. 2020-05-05 17:32:41 -07:00
Jason Volk
c2ba27ace7 ircd::http: Add X-Forwarded-For support to request header. 2020-04-22 23:39:56 -07:00
Jason Volk
acbbb08d3c ircd::http: Add convenience query string array tool w/ decode. 2020-04-21 23:05:28 -07:00
Jason Volk
e71f925f2c ircd::http: Add and adjust some HTTP codes from Cloudfackel.
ircd::http: Add 523 Origin Is Unreachable (Cloudfackel).

ircd::http: Add 521 Connection Timed Out (Cloudfackel).
2020-03-20 22:25:14 -07:00
Jason Volk
7fcd0c948d ircd::http: Downgrade warning to dwarning; minor cleanup. 2020-03-13 15:01:07 -07:00
Jason Volk
2cefc5e248 ircd::http: Optimize head constructions; reduce branch paths. 2020-03-13 11:07:39 -07:00
Jason Volk
164b881442 ircd::http: Add code 102 Processing (RFC 2518), 103 Early Hints (RFC 8297). 2020-03-11 18:18:53 -07:00
Jason Volk
6da0ae9c22 ircd::http: Parse response location header. 2020-03-11 16:37:02 -07:00
Jason Volk
bf1e4e8dfe ircd::http: More optimizer-friendly header assignment. 2020-03-11 16:37:02 -07:00
Jason Volk
62108e2c26 ircd::http: Move closure from response::head; use string_view literal. 2020-03-11 16:15:05 -07:00
Jason Volk
5552f69d5b ircd::http: Move closure from request::head to static function. 2020-03-11 15:24:40 -07:00
Jason Volk
d402eddb98 ircd::run: Place out-of-line default ctor/dtor definitions.
ircd::http::error: Place out-of-line dtor definition.

ircd:Ⓜ️:error: Place out-of-line dtor definition.

ircd::exception: Place out-of-line dtor definition.

ircd:Ⓜ️:vm: Place out-of-line ctor definitions for copts/opts.
2020-02-28 12:36:45 -08:00
Jason Volk
d2b79dbb04 ircd::http: Reopen namespace with default visibility for clang. 2020-02-13 16:30:07 -08:00
Jason Volk
8ec205b4b5 ircd::resource::response::chunked: Further elaborate the class. 2019-09-23 19:46:32 -07:00
Jason Volk
da6fd3e3ab ircd::http: Move version mismatch to unlikely segment.
ircd:Ⓜ️:vm: Reduce branches.

ircd::http: Minor cleanup.
2019-09-14 16:33:14 -07:00
Jason Volk
002e7aae1a ircd::http: Add code 410 Gone. 2019-09-08 19:58:58 -07:00
Jason Volk
fc742ae2d0 ircd: Fix warning/error.
ircd: Minor cleanup.
2019-08-16 03:32:13 -07:00
Jason Volk
b8b711c658 ircd::http: Fix query for_each return value. 2019-07-15 17:52:01 -07:00
Jason Volk
60fda46bdf ircd::http: Consolidate line terminator static strings. 2019-06-28 18:23:43 -07:00
Jason Volk
c59894a01b ircd::http:: Add 416 Range Not Satisfiable. 2019-06-15 12:50:53 -07:00
Jason Volk
7666561f02 ircd::http: Parse range-request related headers as primaries. 2019-06-15 12:48:01 -07:00
Jason Volk
5f248f5965 ircd::http: Add cloudflare 521 code. 2019-06-07 00:09:58 -07:00
Jason Volk
fceea7b770 ircd::http: Parse the HTTP/1.1 Upgrade header. 2019-05-30 21:48:40 -07:00
Jason Volk
744438ec49 ircd: Precompile the spirit.h header. 2019-04-20 19:24:18 -07:00
Jason Volk
af1bd92b26 ircd::spirit: Apply hidden visibility to all headers + our internal grammar namespaces. 2019-04-16 18:33:01 -07:00
Jason Volk
14c32a2075 ircd::http: Support HTTP/1.0. 2019-04-12 08:36:17 -07:00
Jason Volk
c75d602d69 ircd::http: Fix case comparisons for header strings in header tool. 2019-03-31 19:00:38 -07:00
Jason Volk
94ed73a60e ircd::http: Remove gratuitous error constructor; fix 505 response content. 2019-03-23 03:13:11 -07:00
Jason Volk
86759ecc15 ircd::http: Show the unrecognized version string in error message. 2019-03-22 21:06:28 -07:00
Jason Volk
4c6e943d49 ircd::http: Simplify conditional. 2019-03-13 15:33:48 -07:00
Jason Volk
bba6981166 ircd::http: Verify HTTP version after request line. 2019-03-09 14:00:00 -08:00