Commit 3ae6418
authored
Implement H2 decoder (#151)
* Implement H2 decoder
* Implement new H2 decoder vtable
* Implement the H2 decoder state machine
* NOTE: Header blocks are not implemented yet, and as such the HEADERS, CONTINUATION, and PUSH_PROMISE frames are incomplete
* Make global states const
* f_ -> frame_
* Appease the MSVC type conversion gods
* Henso PR feedback
* CI Fixes
* Split goaway into 2 states
* Improve error handling and end of state detection
* Handle leftover scratch into streaming state case
* Handle custom frames
* Misc. PR feedback
* uint32_t pass
* Add error handling strategy (don't) to the decoder
* More PR feedback
* Decrement payload_len in unknown frame state1 parent b4f26ae commit 3ae6418
File tree
6 files changed
+789
-16
lines changed- include/aws/http
- private
- source
- tests/fuzz
6 files changed
+789
-16
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
| 51 | + | |
51 | 52 | | |
52 | 53 | | |
53 | 54 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
21 | 37 | | |
22 | 38 | | |
23 | 39 | | |
24 | 40 | | |
25 | 41 | | |
26 | 42 | | |
27 | | - | |
| 43 | + | |
| 44 | + | |
28 | 45 | | |
29 | 46 | | |
30 | 47 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
| 52 | + | |
| 53 | + | |
58 | 54 | | |
59 | 55 | | |
60 | 56 | | |
| |||
0 commit comments