Loïc Hoguin
bbee34fe16
Crash on failure, don't report errors
...
When something went wrong in a handler we used to report errors
and then terminate the process normally. This doesn't work so
well with links which won't detect failure.
Now we still catch the error, but throw another one with more
details on why it happened, including the Req object information
and the stacktrace. Ranch will then print an error message with
all this information.
Because we crash directly, this also means that we will not hog
resources unnecessarily for too long when something bad happens.
2013-08-24 20:36:23 +02:00
Loïc Hoguin
694c9bfbfa
Update Ranch to 0.8.5
2013-08-24 20:35:28 +02:00
Loïc Hoguin
bfb6db1eab
Simpler code for sending errors following crashes
2013-08-24 20:21:05 +02:00
Loïc Hoguin
ac6c460169
Update erlang.mk
2013-08-24 20:20:58 +02:00
Loïc Hoguin
1e51843f8f
SPDY sponsored by LeoFS
2013-08-23 23:23:04 +02:00
Loïc Hoguin
3b4c0588e9
Merge branch 'patched' of git://github.com/kukhyun/cowboy
2013-08-10 16:31:16 +02:00
Kuk-Hyun Lee
ddbe4e53b8
Fix rest_pastebin example
2013-08-01 10:56:35 +09:00
Loïc Hoguin
5e5d8ab299
Merge branch 'master' of git://github.com/pmyarchon/cowboy
2013-07-22 13:58:14 +02:00
pmyarchon
95c915dfaa
Slight docs fix in cowboy_req.erl
2013-07-18 12:16:03 +04:00
Loïc Hoguin
ddefa33a38
Merge branch 'fix/websocket-inflate-unmask' of git://github.com/soundrop/cowboy
2013-07-12 21:57:27 +02:00
Loïc Hoguin
01301acdaf
Merge branch 'patch-1' of git://github.com/edgurgel/cowboy
2013-07-12 19:48:55 +02:00
Loïc Hoguin
f66a6fc57a
Merge branch 'fix-chunked-req' of git://github.com/fishcakez/cowboy
2013-07-12 18:51:28 +02:00
Eduardo Gurgel
d0bbf11119
Fix qs_vals description on missing value for a name
2013-07-08 14:30:53 -03:00
Ali Sabil
c5c9c398ff
Use the proper typespec for the websocket_deflate_frame rsv bits
2013-07-08 09:49:35 +02:00
James Fish
f0cc2d01e6
Fix decoding of chunked body.
...
Previously cowboy_http:te_chunked/2 would enter an incorrect state if
it tried to parse an incomplete chunk when the length was known from the
partial chunk.
Previosuly cowboy_http:te_chunked/2 expected the trailing "\r\n" to
always be present if chunk body was present in the buffer. This is not
guaranteed and so this commit accommodates that situation.
2013-07-05 22:45:18 +01:00
Ali Sabil
6f0b8804bc
Fix handling of websocket fragmented deflated frames
2013-07-02 13:46:28 +02:00
Ali Sabil
a3b9438d16
Fix websocket unmasking when compression is enabled
...
The unmasking logic was based on the length of inflated data instead
of the length of the deflated data. This meant data would get corrupted
when we receive a websocket frame split across multiple TCP packets.
2013-07-02 13:46:28 +02:00
Ali Sabil
b0d0cabf12
Add failing tests for the websocket deflate support
2013-07-02 13:46:21 +02:00
Ali Sabil
373f2e8134
Fix coding style in websocket_deflate_frame/3
2013-07-02 11:02:32 +02:00
Ali Sabil
4edef3c45c
Remove usage of the inflate buffer
2013-07-02 10:58:12 +02:00
Loïc Hoguin
39caf34fe3
Merge branch 'fix/http-tests-get-mtu' of git://github.com/soundrop/cowboy
2013-06-29 21:54:18 +02:00
Loïc Hoguin
cc4c046ec0
Merge branch 'fix_docs' of git://github.com/pannonia-technologies/cowboy
2013-06-29 19:52:52 +02:00
Matthias Endler
f664329b0b
Minor corrections of the guide
2013-06-27 22:34:56 +02:00
Loïc Hoguin
116acaead7
Remove unknown keys from .app.src file
2013-06-27 19:25:43 +02:00
Loïc Hoguin
61ca86b054
Greatly improve the guide introduction
2013-06-27 00:02:12 +02:00
Loïc Hoguin
b059a1237f
Reword the clean erlang code part
...
We don't care about parameterized modules anymore. They're gone!
2013-06-23 00:34:05 +02:00
Loïc Hoguin
9eaee45c09
Fix compilation < R16B01
2013-06-20 18:44:36 +02:00
Loïc Hoguin
0529f85492
Update to 0.8.6
2013-06-20 16:02:33 +02:00
Loïc Hoguin
b794439252
Update CHANGELOG
2013-06-20 16:01:58 +02:00
Loïc Hoguin
6b521563e2
Update AUTHORS
2013-06-20 16:01:58 +02:00
Loïc Hoguin
11493a40f1
Ignore deprecation warning for crypto:sha/1 for now
...
We can change this call when we start supporting only R16B+,
which may happen when R17B is released or some time before.
2013-06-20 16:01:58 +02:00
Loïc Hoguin
fdf2bc93f6
Add asn1 to the list of applications to be started for SSL
...
Required since R16B01. And apparently needed in some cases before.
2013-06-20 16:01:58 +02:00
Loïc Hoguin
2923de944f
Update Ranch to 0.8.4
2013-06-20 16:01:53 +02:00
Loïc Hoguin
9769003472
Merge branch 'feature/websocket-deflate-frame' of git://github.com/soundrop/cowboy
2013-06-20 14:18:18 +02:00
Ali Sabil
a63faff35e
Add support for the webkit deflate frame extension
2013-06-20 13:09:13 +02:00
Loïc Hoguin
47396211cf
Update erlang.mk
2013-06-19 16:35:51 +02:00
Loïc Hoguin
46376b3524
Merge branch 'fix/crash-on-invalid-accept-encoding' of git://github.com/soundrop/cowboy
2013-06-19 15:51:24 +02:00
Ali Sabil
240533939c
Use ct_helper for retrieving the loopack interface MTU
2013-06-13 11:47:24 +02:00
Ali Sabil
ba1eca6b97
Avoid crashing in cowboy_req on invalid Accept-Encoding header
...
Certain clients send malformed Accept-Encoding headers, which causes
cowboy_req to crash is compression is enabled.
2013-06-10 15:22:05 +02:00
Ali Sabil
809dc32339
Improve the detection of localhost interfaces for the HTTP test suite
2013-06-10 09:53:32 +02:00
Loïc Hoguin
a55c20c4ef
Merge branch 'dont_overwrite_stacktrace' of git://github.com/urbanserj/cowboy
2013-06-08 21:50:58 +02:00
Loïc Hoguin
830d4c85c8
Merge branch 'read_with_utc' of git://github.com/narma/cowboy
2013-06-07 19:07:38 +02:00
Sergey Urbanovich
1577ec8364
Don't overwrite stacktrace in cowboy_rest:error_terminate/2
...
This stacktrace is very useful in the `onresponse` hook. For example:
```erlang
internal_error_hook(500, Headers, <<>>, Req) ->
StackTrace = erlang:get_stacktrace(),
Headers0 = [{N, V} || {N, V} <- Headers, N =/= <<"content-length">>],
Body = io_lib:format("~p", [StackTrace]),
{ok, Req0} = cowboy_req:reply(500, Headers0, Body, Req),
Req0;
internal_error_hook(Status, Headers, Body, Req) ->
{ok, Req0} = cowboy_req:reply(Status, Headers, Body, Req),
Req0.
```
2013-06-07 21:06:27 +04:00
Loïc Hoguin
a8737cb763
Merge branch 'types' of git://github.com/lavrin/cowboy
2013-06-07 18:40:44 +02:00
Loïc Hoguin
be0f7a214c
Merge branch 'spdy-zero-length-header-names' of git://github.com/bgentry/cowboy
2013-06-07 18:36:29 +02:00
Sergey Rublev
d6c9bb27ad
Use read_file_info/2 with {time, universal} option
2013-06-07 22:21:42 +07:00
Ali Sabil
fdd67b72a3
Fix the reading of the localhost MTU in the HTTP tests
...
Sometimes the localhost interface has a different name from "lo",
this fix adds a helper function to read the MTU value when the
interface name starts with "lo".
2013-06-07 12:01:01 +02:00
Loïc Hoguin
5179b0647b
Fix a couple control_frame clauses that were too large
2013-06-05 10:47:04 +02:00
Loïc Hoguin
1fc69977da
Add sendfile support to SPDY, enabling cowboy_static use
2013-06-03 19:10:03 +02:00
Loïc Hoguin
e50f7e4086
Move static files creation into ct_helper
2013-06-03 17:20:54 +02:00