0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-15 20:50:24 +00:00

Add the private set_buffer/2 function used by cowboy_protocol

This commit is contained in:
Loïc Hoguin 2012-09-17 00:30:54 +02:00
parent fc02b7f767
commit 5b56dd780b
2 changed files with 10 additions and 2 deletions

View file

@ -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).

View file

@ -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.