aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/cowboy_protocol.erl6
-rw-r--r--src/cowboy_req.erl6
2 files changed, 10 insertions, 2 deletions
diff --git a/src/cowboy_protocol.erl b/src/cowboy_protocol.erl
index 9520667..bcbdf57 100644
--- a/src/cowboy_protocol.erl
+++ b/src/cowboy_protocol.erl
@@ -214,11 +214,13 @@ header(http_eoh, Req, State=#state{host_tokens=undefined,
error_terminate(400, State);
{{1, 0}, Req2} ->
Port = default_port(Transport:name()),
- onrequest(Req2#http_req{host= <<>>, port=Port, buffer=Buffer},
+ onrequest(
+ cowboy_req:set_buffer(Buffer,
+ cowboy_req:set_host(<<>>, Port, <<>>, Req2)),
State#state{buffer= <<>>, host_tokens=[]})
end;
header(http_eoh, Req, State=#state{buffer=Buffer}) ->
- onrequest(Req#http_req{buffer=Buffer}, State#state{buffer= <<>>});
+ onrequest(cowboy_req:set_buffer(Buffer, Req), State#state{buffer= <<>>});
header(_Any, _Req, State) ->
error_terminate(400, State).
diff --git a/src/cowboy_req.erl b/src/cowboy_req.erl
index d074efa..aad6a97 100644
--- a/src/cowboy_req.erl
+++ b/src/cowboy_req.erl
@@ -106,6 +106,7 @@
-export([set_host/4]).
-export([set_connection/2]).
-export([add_header/3]).
+-export([set_buffer/2]).
%% Misc API.
-export([compact/1]).
@@ -935,6 +936,11 @@ set_connection(RawConnection, Req=#http_req{headers=Headers}) ->
add_header(Name, Value, Req=#http_req{headers=Headers}) ->
Req#http_req{headers=[{Name, Value}|Headers]}.
+%% @private
+-spec set_buffer(binary(), Req) -> Req when Req::req().
+set_buffer(Buffer, Req) ->
+ Req#http_req{buffer=Buffer}.
+
%% Misc API.
%% @doc Compact the request data by removing all non-system information.