0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-16 13:10:24 +00:00
Commit graph

600 commits

Author SHA1 Message Date
James Fish
b61f535134 Fix to prevent loop handler awakening immediately after response sent
If a loop handler sent a response (e.g. cowboy_req:chunked_reply/2,/3)
and then returns {loop, Req, HandlerState, hibernate} it
would have a {cowboy_req, resp_sent} message in its message queue. This
message would cause the process to immediately awaken, so it is flushed
before hibernation.
2013-02-22 18:36:13 +00:00
Loïc Hoguin
6884a4949b Update to 0.8.1 2013-02-22 15:35:56 +01:00
Egobrain
73c718dcb5 Added warn compile options. Fixed compile warnings. 2013-02-21 18:32:23 +04:00
Loïc Hoguin
b2ffff9bec Add cowboy:set_env/3 2013-02-20 12:14:21 +01:00
Loïc Hoguin
1f59607b7a Merge branch 'fix-handler-spec' of git://github.com/fishcakez/cowboy 2013-02-17 22:25:19 +01:00
Loïc Hoguin
d4ed41e79b Merge branch 'sub_protocol-behaviour' of git://github.com/fishcakez/cowboy 2013-02-17 22:17:03 +01:00
James Fish
c42e672dd0 Fix {suspend, ...} specs to use atom() for function name 2013-02-17 02:11:45 +00:00
James Fish
6d67ad809c Add sub protocol behaviour 2013-02-16 16:19:53 +00:00
Andrew Majorov
3ea855137c Make sure socket is passive once we've done with loop handler
It is sometimes important to make a socket passive as it was initially
and as it is expected to be by cowboy_protocol, right after we've done
with loop handling.
2013-02-15 15:34:01 +04:00
Loïc Hoguin
e3daf439da Properly pass the handler's state to websocket_terminate/3 on close 2013-02-14 19:26:46 +01:00
Loïc Hoguin
1df271a35b Merge branch 'has_body_improved' of git://github.com/0xAX/cowboy 2013-02-14 18:35:53 +01:00
Loïc Hoguin
bc340478c8 Merge branch 'fix/websocket_callback_specs' of git://github.com/keynslug/cowboy 2013-02-14 18:15:18 +01:00
Loïc Hoguin
0218249c21 Merge branch 'native_compile' of git://github.com/acammack/cowboy 2013-02-14 17:50:49 +01:00
0xAX
1de2e1f2a4 cowbot_req:has_body:/1 improved 2013-02-14 18:56:52 +06:00
Adam Cammack
7f0c6bbb39 Make cowboy_websocket.erl compile with +native
Worked until cccc0bc
2013-02-13 11:32:35 -06:00
Andrew Majorov
b44ccf59e6 Update websocket handler callback specs
There are some additional terminate reasons exist which are not mentioned
in the specs.
2013-02-13 18:24:02 +04:00
Adam Cammack
b903aca33d Make cowboy_http.erl compile with +native
Worked until 27da092
2013-02-12 11:53:47 -06:00
Loïc Hoguin
46cce48143 Update to 0.8.0 2013-02-12 18:05:52 +01:00
Loïc Hoguin
f9c3b36847 Make cowboy_protocol:resume/6 private 2013-02-12 18:05:18 +01:00
Loïc Hoguin
20329a6e9e Fix connection state being ignored for unknown length streaming 2013-02-12 17:15:11 +01:00
Loïc Hoguin
bce7b860ee Merge branch 'static_doc' of git://github.com/acammack/cowboy 2013-02-12 14:06:54 +01:00
Adam Cammack
6575ceb0dd Fix examples in cowboy_static edoc and guide 2013-02-11 09:44:25 -06:00
Loïc Hoguin
40b8d0befc Better handle socket closing with loop handlers
We now read from the socket to be able to detect errors or TCP close
events, and buffer the data if any. Once the data receive goes over
a certain limit, which defaults to 5000 bytes, we simply close the
connection with an {error, overflow} reason.
2013-02-11 09:03:13 +01:00
Loïc Hoguin
65ed13d2da Do not reset the connection timeout timer on send
Sends can be successful even if the connection is gone.
2013-02-09 21:46:05 +01:00
Loïc Hoguin
26935cbfb0 Make sure rest_terminate is always called
Also improves error reporting.
2013-02-09 17:05:28 +01:00
Slava Yurin
7ca591a0da Fix Location header
Fix #414
2013-02-09 11:19:25 +07:00
Loïc Hoguin
ae401f7460 Fix crashes when creating the request
We now obtain the peer address before creating the Req object.
If an error occurs, then something went wrong, we close the connection
nicely directly.
2013-02-06 23:32:31 +01:00
Loïc Hoguin
1c5ce11d13 Strip whitespaces when authorization type is unknown 2013-02-06 19:16:06 +01:00
Loïc Hoguin
ecb234693c Merge branch 'expose-to_upper' of git://github.com/dvv/cowboy 2013-02-06 18:52:56 +01:00
Loïc Hoguin
8e1bbc2cbc Merge branch 'no-unicode-uri' of git://github.com/dvv/cowboy 2013-02-06 18:38:13 +01:00
Loïc Hoguin
4e71cd0f14 Merge branch 'master' of git://github.com/tsloughter/cowboy 2013-02-06 18:35:52 +01:00
Tristan Sloughter
29c4508884 add guards on set_resp_body_fun for streamlen and streamfun 2013-02-01 10:41:45 -06:00
Loïc Hoguin
855e9652fa Make sure the peer name is always available 2013-01-30 23:38:51 +01:00
Loïc Hoguin
3c5502bbf7 Fix a new warning found by Dialyzer R16A 2013-01-30 18:23:21 +01:00
Loïc Hoguin
d9b3727a62 Merge branch 'patch-1' of https://github.com/CamShaft/cowboy
Conflicts:
	src/cowboy_rest.erl
2013-01-29 22:33:03 +01:00
Loïc Hoguin
f710ac86f8 Merge branch 'feature_basic_auth' of https://github.com/ivlis/cowboy 2013-01-29 22:20:59 +01:00
Ivan Lisenkov
54c6d3fa3a Implement authorization header parsing
Basic HTTP authorization according to RFC 2617 is implemented.
Added an example of its usage with REST handler.
2013-01-30 00:30:05 +04:00
Tom Burdick
8a798014e9 allow POST rest handling to specify path after accepting content 2013-01-29 13:12:53 -06:00
Loïc Hoguin
a59c5d6e91 Merge branch 'rest_patch' of https://github.com/treetopllc/cowboy 2013-01-29 19:16:45 +01:00
Loïc Hoguin
85d05fff34 Fix chunked streaming of request body and improve speed 2013-01-29 19:12:34 +01:00
Tom Burdick
c4d1ee5547 add patch support to cowboy_rest 2013-01-29 11:34:20 -06:00
Loïc Hoguin
638638a841 Fix {cowboy_req, resp_sent} potentially leaking in loop handlers 2013-01-29 14:35:26 +01:00
Loïc Hoguin
8050f2e0fa Do not attempt to skip the request body on Connection: close 2013-01-29 13:34:22 +01:00
Loïc Hoguin
bdc8342595 Merge branch 'fix/callback_specs' of https://github.com/keynslug/cowboy 2013-01-29 12:11:12 +01:00
Loïc Hoguin
5d8c29ff0f If a binding is reused, we check that values are identical
This is more for consistency than anything.
2013-01-29 00:57:26 +01:00
Loïc Hoguin
c2c333de8a Add the 'function' constraint 2013-01-28 23:39:21 +01:00
Loïc Hoguin
a5a69353f1 Add the 'int' constraint 2013-01-28 19:56:42 +01:00
Loïc Hoguin
a357c49d1b New routing
Ultimately few things change, it's mostly just a nicer syntax and
slightly different expectations. The name of the value `dispatch`
did not change, because the previous dispatch values will now fail
if the code is not updated to using `cowboy_router:compile/1`.

No constraints have been implemented in this commit.
2013-01-28 16:53:09 +01:00
Andrew Majorov
0d93c96b31 Update handler callback specs
There is one another {upgrade, ...} quintuple allowed as the result of
Handler:init call, somewhy not mentioned in the callback specifications.
2013-01-26 02:37:43 +04:00
Vladimir Dronnikov
85fc53be8c Expose uppercase binary converter 2013-01-25 02:41:06 +00:00