aboutsummaryrefslogtreecommitdiffstats
path: root/src/cowboy_websocket.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2012-09-15 22:19:39 +0200
committerLoïc Hoguin <[email protected]>2012-09-15 22:19:39 +0200
commit0aaa717575dd4a9287a473381d90b7cef15cda95 (patch)
tree31df63155e8acf5f39828b32cf240d89cb3750ee /src/cowboy_websocket.erl
parent27d591180ca3dd8b0d3c63c1293da5a3c4f4321f (diff)
downloadcowboy-0aaa717575dd4a9287a473381d90b7cef15cda95.tar.gz
cowboy-0aaa717575dd4a9287a473381d90b7cef15cda95.tar.bz2
cowboy-0aaa717575dd4a9287a473381d90b7cef15cda95.zip
Remove duplicate code for ensure_response
Diffstat (limited to 'src/cowboy_websocket.erl')
-rw-r--r--src/cowboy_websocket.erl17
1 files changed, 2 insertions, 15 deletions
diff --git a/src/cowboy_websocket.erl b/src/cowboy_websocket.erl
index 2db0faa..55855c7 100644
--- a/src/cowboy_websocket.erl
+++ b/src/cowboy_websocket.erl
@@ -126,7 +126,8 @@ handler_init(State=#state{transport=Transport, handler=Handler, opts=Opts},
websocket_handshake(State#state{timeout=Timeout,
hibernate=true}, Req2, HandlerState);
{shutdown, Req2} ->
- upgrade_denied(Req2)
+ cowboy_req:ensure_response(Req2, 400),
+ closed
catch Class:Reason ->
upgrade_error(Req),
PLReq = cowboy_req:to_list(Req),
@@ -146,20 +147,6 @@ upgrade_error(Req) ->
closed
end.
-%% @see cowboy_protocol:ensure_response/1
--spec upgrade_denied(cowboy_req:req()) -> closed.
-upgrade_denied(#http_req{resp_state=done}) ->
- closed;
-upgrade_denied(Req=#http_req{resp_state=waiting}) ->
- {ok, _Req2} = cowboy_req:reply(400, [], [], Req),
- closed;
-upgrade_denied(#http_req{method='HEAD', resp_state=chunks}) ->
- closed;
-upgrade_denied(#http_req{socket=Socket, transport=Transport,
- resp_state=chunks}) ->
- Transport:send(Socket, <<"0\r\n\r\n">>),
- closed.
-
-spec websocket_handshake(#state{}, cowboy_req:req(), any()) -> closed.
websocket_handshake(State=#state{socket=Socket, transport=Transport,
version=0, origin=Origin, challenge={Key1, Key2}},