From c4e43ec26ad5193b9665f159d294d133a2d34a85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 22 Nov 2017 15:39:39 +0100 Subject: Add more rfc7230 tests and better handle bad chunk sizes Bad chunk sizes used to be accepted and could result in a badly parsed body or a timeout. They are now properly rejected. Chunk extensions now have a hard limit of 129 characters. I haven't heard of anyone using them and Cowboy does not provide an interface for them, but we can always increase or make configurable if it ever becomes necessary (but I honestly doubt it). Also a test from the old http suite could be removed. Yay! --- test/handlers/echo_h.erl | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'test/handlers') diff --git a/test/handlers/echo_h.erl b/test/handlers/echo_h.erl index 18bdbe6..04c3cf5 100644 --- a/test/handlers/echo_h.erl +++ b/test/handlers/echo_h.erl @@ -22,6 +22,10 @@ echo(<<"read_body">>, Req0, Opts) -> cowboy_req:inform(100, Req0), cowboy_req:read_body(Req0); <<"/full", _/bits>> -> read_body(Req0, <<>>); + <<"/length", _/bits>> -> + {_, _, Req1} = read_body(Req0, <<>>), + Length = cowboy_req:body_length(Req1), + {ok, integer_to_binary(Length), Req1}; <<"/opts", _/bits>> -> cowboy_req:read_body(Req0, Opts); _ -> cowboy_req:read_body(Req0) end, -- cgit v1.2.3