0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-14 12:20:24 +00:00
Commit graph

924 commits

Author SHA1 Message Date
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
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
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
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
Radosław Szymczyszyn
e4f407e426 Fix cowboy:start_http/https/spdy typespecs 2013-06-02 00:40:22 +02:00
Blake Gentry
157f64b49b zero-length header names MUST issue a stream error 2013-05-31 11:15:20 -07:00
Loïc Hoguin
c1a1fd125d Don't crash on empty Cookie header
It's not allowed, however a heavily deployed client (Flash player)
can send such an empty header, therefore we make a special condition
for it and return an empty list when it happens.
2013-05-31 18:59:52 +02:00
Loïc Hoguin
4fde6cba94 In content-types, the charset parameter is converted to lowercase
We know this specific parameter is case insensitive so we
automatically lowercase it to make things simpler to the
developer.
2013-05-31 18:38:43 +02:00
Loïc Hoguin
8fac4eedcf Improve generate_etag return value description 2013-05-31 15:23:53 +02:00
Loïc Hoguin
cab1a8fb45 Merge branch 'rest_method' of git://github.com/dvv/cowboy 2013-05-31 15:13:24 +02:00
Loïc Hoguin
9a2d35c2e8 Add experimental and incomplete SPDY support
The SPDY connection processes are also supervisors.

Missing:
 *  sendfile support
 *  request body reading support
2013-05-30 20:21:01 +02:00
Loïc Hoguin
c7f0834dc3 manual: Fix a typo in a typespec 2013-05-25 17:50:16 +02:00
Loïc Hoguin
cadde391f7 manual: Add a missing return type for generate_etag 2013-05-25 17:49:09 +02:00
Loïc Hoguin
bfbe1cc5c6 Update Cowboy to 0.8.5 2013-05-24 15:16:48 +02:00
Loïc Hoguin
cd974ef9f2 Update AUTHORS 2013-05-24 15:16:24 +02:00
Loïc Hoguin
df05b4c9a5 Update CHANGELOG 2013-05-24 15:15:24 +02:00
Loïc Hoguin
7eca879043 Update ROADMAP 2013-05-24 14:59:30 +02:00
Loïc Hoguin
22f961a7e8 Add Cowboy manual to README 2013-05-17 17:16:43 +02:00
Loïc Hoguin
666c59bc42 Add the Cowboy Function Reference
The manual details every stable public functions of Cowboy.
2013-05-17 13:13:27 +02:00
Loïc Hoguin
0e0ec7b120 Use the ranch_ssl:opts() type in cowboy:start_https/4 spec 2013-05-16 19:17:01 +02:00
Loïc Hoguin
e4bb2ffc77 Use the ranch_tcp:opts() type in cowboy:start_http/4 spec 2013-05-16 19:16:13 +02:00
Loïc Hoguin
bb89bf6f8d Use the type ranch:ref() instead of any() where applicable 2013-05-16 19:13:36 +02:00
Loïc Hoguin
3d2f7218c5 Update Ranch to 0.8.3 2013-05-16 19:10:32 +02:00
Loïc Hoguin
6d1344319a Add cowboy_protocol:opts() type
Should improve the detection of wrong protocol options.
2013-05-16 17:56:45 +02:00
Loïc Hoguin
2e787fed56 The charset iso-8859-1 is added only if not explicitely mentioned
It was added all the time when * was missing, the RFC specifies it
should only be added if it wasn't already present, though.
2013-05-16 17:38:29 +02:00
Loïc Hoguin
08fcb38a18 charsets_provided/2 returns a list of charsets
It incorrectly returned a tuple containing the charset and an
associated quality which wasn't being used.
2013-05-16 17:32:07 +02:00
Loïc Hoguin
1d413ea51b Move cowboy_protocol:onresponse_fun() to cowboy:onresponse_fun() 2013-05-16 17:01:38 +02:00
Loïc Hoguin
488dcc967b Move cowboy_protocol:onrequest_fun() to cowboy:onrequest_fun() 2013-05-16 16:52:20 +02:00
Loïc Hoguin
df73a4d0a5 Move cowboy_http:status() to cowboy:http_status() 2013-05-16 16:29:24 +02:00
Loïc Hoguin
f8a7856127 Move cowboy_http:headers() to cowboy:http_headers() 2013-05-16 16:16:32 +02:00
Loïc Hoguin
c0c333e41b Move cowboy_http:version() to cowboy:http_version() 2013-05-16 16:06:52 +02:00
Loïc Hoguin
ba7e6c07ec Improve the specs for cowboy_req:init_stream/4 2013-05-16 15:54:30 +02:00
Loïc Hoguin
934393a168 Make the return value of AcceptResource callback consistent 2013-05-16 15:14:11 +02:00
Loïc Hoguin
28186a68d0 Make the HTTP version type more practical
Now instead of {1, 1} we have 'HTTP/1.1', and instead of {1, 0}
we have 'HTTP/1.0'. This is more efficient, easier to read in
crash logs, and clearer in the code.
2013-05-16 12:56:01 +02:00
Loïc Hoguin
e0b5526f1e Remove cowboy_req:fragment/1
Clients do not send it. We skip the value if we receive it now,
as it shouldn't happen, and won't for all the mainstream clients.
2013-05-15 15:17:33 +02:00
Loïc Hoguin
7577ce4920 Fix the cowboy_websocket:frame/0 type
It accepts iodata() and not binary() for the payload.
2013-05-15 14:53:45 +02:00
Loïc Hoguin
a45787208e Fix two incorrect comments in cowboy_req 2013-05-15 14:53:28 +02:00
Loïc Hoguin
76c6aa2183 The cookie value can only be binary() 2013-05-15 14:50:40 +02:00
Loïc Hoguin
c582335c5b The return value of cowboy_req:peer/1 is never undefined 2013-05-15 14:49:44 +02:00
Loïc Hoguin
ce7981deb3 Fix incorrect spec for the middleware callback 2013-05-15 14:49:09 +02:00
Loïc Hoguin
bf2b8181cc Add two missing terminate reasons to http/loop handlers specs 2013-05-15 14:47:37 +02:00
Loïc Hoguin
517a31086b Change some module calls to local function calls 2013-05-15 14:46:24 +02:00
Loïc Hoguin
6e33274c85 Update Ranch to 0.8.2 and use ct_helper for testing SSL 2013-05-01 18:30:00 +02:00