aboutsummaryrefslogtreecommitdiffstats
path: root/src/cow_http2.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2018-10-26 10:12:25 +0200
committerLoïc Hoguin <[email protected]>2018-10-26 10:12:25 +0200
commitb461b119e78e4e09bb28b186b09da7ed4a86a0dd (patch)
tree7e3aff85603ea11450b9df2ba57df61927889ef0 /src/cow_http2.erl
parent078f855672fe8ad65d2b25b0a4843c0f5637f32c (diff)
downloadcowlib-b461b119e78e4e09bb28b186b09da7ed4a86a0dd.tar.gz
cowlib-b461b119e78e4e09bb28b186b09da7ed4a86a0dd.tar.bz2
cowlib-b461b119e78e4e09bb28b186b09da7ed4a86a0dd.zip
Introduce cow_http2_machine, an HTTP/2 state machine
This is the result of a merge of the Cowboy and Gun HTTP/2 codes. It can probably do a little more but it's at a point where Cowboy works fine when using it so additional work will be done in other commits. The Gun code has not been switched to this module yet. I expect for example the PUSH_PROMISE code to fail at this point. This will be the next step.
Diffstat (limited to 'src/cow_http2.erl')
-rw-r--r--src/cow_http2.erl6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/cow_http2.erl b/src/cow_http2.erl
index e6f7738..ec4aab9 100644
--- a/src/cow_http2.erl
+++ b/src/cow_http2.erl
@@ -36,8 +36,14 @@
-export([window_update/2]).
-type streamid() :: pos_integer().
+-export_type([streamid/0]).
+
-type fin() :: fin | nofin.
+-export_type([fin/0]).
+
-type head_fin() :: head_fin | head_nofin.
+-export_type([head_fin/0]).
+
-type exclusive() :: exclusive | shared.
-type weight() :: 1..256.
-type settings() :: map().