diff options
author | Tony Han <[email protected]> | 2019-04-28 10:46:17 +0800 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2019-07-16 15:32:58 +0200 |
commit | 7708fc77cd95768aef65bd0eb366ee300cc0515f (patch) | |
tree | 82be19d508355a71d0cc4a697a23c80edf2e0ab0 /test/handlers | |
parent | 504c7c55f7962474c3d6251172810c7731f8d7b0 (diff) | |
download | cowboy-7708fc77cd95768aef65bd0eb366ee300cc0515f.tar.gz cowboy-7708fc77cd95768aef65bd0eb366ee300cc0515f.tar.bz2 cowboy-7708fc77cd95768aef65bd0eb366ee300cc0515f.zip |
Data received after RST_STREAM counts toward window
Diffstat (limited to 'test/handlers')
-rw-r--r-- | test/handlers/loop_handler_abort_h.erl | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/handlers/loop_handler_abort_h.erl b/test/handlers/loop_handler_abort_h.erl new file mode 100644 index 0000000..759ca98 --- /dev/null +++ b/test/handlers/loop_handler_abort_h.erl @@ -0,0 +1,21 @@ +%% This module implements a loop handler that reads +%% 1000 bytes of the request body after sending itself +%% a message, then terminates the stream. + +-module(loop_handler_abort_h). + +-export([init/2]). +-export([info/3]). +-export([terminate/3]). + +init(Req, _) -> + self() ! timeout, + {cowboy_loop, Req, undefined, hibernate}. + +info(timeout, Req0, State) -> + {_Status, Body, Req} = cowboy_req:read_body(Req0, #{length => 1000}), + 1000 = byte_size(Body), + {stop, cowboy_req:reply(200, Req), State}. + +terminate(stop, _, _) -> + ok. |