From 0c2e2224e372f01e6cf51a8e12d4856edb4cb8ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 23 May 2012 14:53:48 +0200 Subject: Update version to 0.6.0 Also update the CHANGELOG and copyright years. --- CHANGELOG.md | 86 +++++++++++++++++++++++++++++++++++ LICENSE | 2 +- README.md | 14 +++--- ROADMAP.md | 4 +- doc/overview.edoc | 4 +- include/http.hrl | 2 +- src/cowboy.app.src | 4 +- src/cowboy.erl | 2 +- src/cowboy_acceptor.erl | 2 +- src/cowboy_acceptors_sup.erl | 2 +- src/cowboy_app.erl | 2 +- src/cowboy_bstr.erl | 2 +- src/cowboy_clock.erl | 2 +- src/cowboy_dispatcher.erl | 76 +++++++++++++++---------------- src/cowboy_http.erl | 2 +- src/cowboy_http_handler.erl | 2 +- src/cowboy_http_protocol.erl | 2 +- src/cowboy_http_req.erl | 2 +- src/cowboy_http_rest.erl | 2 +- src/cowboy_http_websocket.erl | 2 +- src/cowboy_http_websocket_handler.erl | 2 +- src/cowboy_listener.erl | 2 +- src/cowboy_listener_sup.erl | 2 +- src/cowboy_protocol.erl | 2 +- src/cowboy_requests_sup.erl | 2 +- src/cowboy_ssl_transport.erl | 2 +- src/cowboy_sup.erl | 2 +- src/cowboy_tcp_transport.erl | 2 +- test/dispatcher_prop.erl | 2 +- test/http_SUITE.erl | 4 +- test/proper_SUITE.erl | 2 +- test/ws_SUITE.erl | 2 +- 32 files changed, 163 insertions(+), 79 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a4b815b..d293da9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,92 @@ CHANGELOG ========= +0.6.0 +----- + +* Add multipart support + +* Add chunked transfer decoding support + + Done by reworking the body reading API. Now all the body + reading goes through the cowboy_http_req:stream_body/1 + function. This function takes care of handling both the + Transfer-Encoding and the Content-Encoding, returning + properly decoded data ready for consumption. + +* Add fragmented websocket messages support + + Properly tested by the addition of the Autobahn websocket + test suite to our toolbox. All tests pass except a few + related to UTF-8 handling, as Cowboy does no checks on that + end at this point. + +* Add 'onrequest' and 'onresponse' hooks + + The first can be used for all the special cases you may have + that can't be dealt with otherwise. It's also pretty good for + writing access logs or rewriting URLs. + + The second can be used for logging errors or replacing error + pages, amongst others. + +* Add cowboy:get_protocol_options/1 and cowboy:set_protocol_options/2 + + These functions allow for retrieving a listener's protocol options, + and for modifying them while the listener is running. This is + most useful to upgrade the dispatch list. The upgrade applies + to all the future connections. + +* Add the sockname/1 function to TCP and SSL transports + +* Improve SSL transport support + + Add support for specifying the ciphers. Add CA support. Make + specifying the password optional. + +* Add new HTTP status codes from RFC 6585 + +* Add a 'file' option to cowboy_http_static + + This allows for mapping /folder/ paths to a /folder/index.html file. + +* Add the '*' catch all Content-Type for REST + +* Add {halt, Req, State} as a possible return value for REST + +* Add absolute URI support for requests + +* Add cowboy_http:x_www_form_urlencoded/2 + +* Various REST bug fixes + +* Do not send chunked replies for HTTP/1.0 connections + +* Fix a DST bug in the cookies code + +* Fix a bug with setting cookie values containing slashes + +* Fix a small timer leak when using loop/websocket timeouts + +* Make charset and media type parsing more relaxed + + This is to accomodate some widely used broken clients. + +* Make error messages more readable + +* Fix and improve type specifications + +* Fix a bug preventing documentation from being generated + +* Small improvements to the documentation + +* Rework the HTTP test suite + + The suite now uses an integrated Cowboy HTTP client. The client + is currently experimental and shouldn't be used. + +* Add many many tests. + 0.4.0 ----- diff --git a/LICENSE b/LICENSE index 7de99bb..f79b460 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2011, Loïc Hoguin +Copyright (c) 2011-2012, Loïc Hoguin Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above diff --git a/README.md b/README.md index d5950b9..5ca16cc 100644 --- a/README.md +++ b/README.md @@ -157,28 +157,28 @@ based on the hostname and path information from the request. It also lets you define static options for the handler directly in the rules. To match the hostname and path, Cowboy requires a list of tokens. For -example, to match the "dev-extend.eu" domain name, you must specify -`[<<"dev-extend">>, <<"eu">>]`. Or, to match the "/path/to/my/resource" +example, to match the "ninenines.eu" domain name, you must specify +`[<<"ninenines">>, <<"eu">>]`. Or, to match the "/path/to/my/resource" you must use `[<<"path">>, <<"to">>, <<"my">>, <<"resource">>]`. All the tokens must be given as binary. You can use the special token `'_'` (the atom underscore) to indicate that you accept anything in that position. For example if you have both -"dev-extend.eu" and "dev-extend.fr" domains, you can use the match spec -`[<<"dev-extend">>, '_']` to match any top level extension. +"ninenines.eu" and "ninenines.fr" domains, you can use the match spec +`[<<"ninenines">>, '_']` to match any top level extension. Finally, you can also match multiple leading segments of the domain name and multiple trailing segments of the request path using the atom `'...'` (the atom ellipsis) respectively as the first host token or the last path token. For -example, host rule `['...', <<"dev-extend">>, <<"eu">>]` can match both -"cowboy.bugs.dev-extend.eu" and "dev-extend.eu" and path rule +example, host rule `['...', <<"ninenines">>, <<"eu">>]` can match both +"cowboy.bugs.ninenines.eu" and "ninenines.eu" and path rule `[<<"projects">>, '...']` can match both "/projects" and "/projects/cowboy/issues/42". The host leading segments and the path trailing segments can later be retrieved through `cowboy_http_req:host_info/1` and `cowboy_http_req:path_info/1`. Any other atom used as a token will bind the value to this atom when -matching. To follow on our hostnames example, `[<<"dev-extend">>, ext]` +matching. To follow on our hostnames example, `[<<"ninenines">>, ext]` would bind the values `<<"eu">>` and `<<"fr">>` to the ext atom, that you can later retrieve in your handler by calling `cowboy_http_req:binding/{2,3}`. diff --git a/ROADMAP.md b/ROADMAP.md index 3daacb1..19b0721 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -61,14 +61,12 @@ are not ordered. Tools like curl expect a 100 Continue before sending a request body by default. -* Convert the multipart code to stream_body. - * Complete the work on Websockets. Now that the Autobahn test suite is available (make inttests), we have a definite way to know whether Cowboy's implementation of Websockets is right. The work can thus be completed. The - remaining tasks are proper UTF8 handling. + remaining task is proper UTF8 handling. * SPDY support. diff --git a/doc/overview.edoc b/doc/overview.edoc index 56648c4..aa5e4c6 100644 --- a/doc/overview.edoc +++ b/doc/overview.edoc @@ -1,4 +1,4 @@ -@author Loïc Hoguin -@copyright 2011 Loïc Hoguin +@author Loïc Hoguin +@copyright 2011-2012 Loïc Hoguin @version HEAD @title Small, fast, modular HTTP server. diff --git a/include/http.hrl b/include/http.hrl index dc849c2..33b8d39 100644 --- a/include/http.hrl +++ b/include/http.hrl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% Copyright (c) 2011, Anthony Ramine %% %% Permission to use, copy, modify, and/or distribute this software for any diff --git a/src/cowboy.app.src b/src/cowboy.app.src index 9b3ee50..544142b 100644 --- a/src/cowboy.app.src +++ b/src/cowboy.app.src @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above @@ -14,7 +14,7 @@ {application, cowboy, [ {description, "Small, fast, modular HTTP server."}, - {vsn, "0.5.0"}, + {vsn, "0.6.0"}, {modules, []}, {registered, [cowboy_clock, cowboy_sup]}, {applications, [ diff --git a/src/cowboy.erl b/src/cowboy.erl index 1097197..6ef415b 100644 --- a/src/cowboy.erl +++ b/src/cowboy.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_acceptor.erl b/src/cowboy_acceptor.erl index b2a1ef0..55ef933 100644 --- a/src/cowboy_acceptor.erl +++ b/src/cowboy_acceptor.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_acceptors_sup.erl b/src/cowboy_acceptors_sup.erl index 7c962d2..15bdc40 100644 --- a/src/cowboy_acceptors_sup.erl +++ b/src/cowboy_acceptors_sup.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_app.erl b/src/cowboy_app.erl index c7cefe4..a6c4b18 100644 --- a/src/cowboy_app.erl +++ b/src/cowboy_app.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_bstr.erl b/src/cowboy_bstr.erl index 1c702ef..0cd8e4d 100644 --- a/src/cowboy_bstr.erl +++ b/src/cowboy_bstr.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_clock.erl b/src/cowboy_clock.erl index e22b718..3193b35 100644 --- a/src/cowboy_clock.erl +++ b/src/cowboy_clock.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_dispatcher.erl b/src/cowboy_dispatcher.erl index 6de8b49..00c067c 100644 --- a/src/cowboy_dispatcher.erl +++ b/src/cowboy_dispatcher.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% Copyright (c) 2011, Anthony Ramine %% %% Permission to use, copy, modify, and/or distribute this software for any @@ -85,8 +85,8 @@ do_split_path(RawPath, Separator, URLDec) -> %% corresponding token value and return it. %% %% The list of hostname tokens is reversed before matching. For example, if -%% we were to match "www.dev-extend.eu", we would first match "eu", then -%% "dev-extend", then "www". This means that in the context of hostnames, +%% we were to match "www.ninenines.eu", we would first match "eu", then +%% "ninenines", then "www". This means that in the context of hostnames, %% the '...' atom matches properly the lower levels of the domain %% as would be expected. %% @@ -173,16 +173,16 @@ split_host_test_() -> {<<"">>, {[], <<"">>, undefined}}, {<<".........">>, {[], <<".........">>, undefined}}, {<<"*">>, {[<<"*">>], <<"*">>, undefined}}, - {<<"cowboy.dev-extend.eu">>, - {[<<"cowboy">>, <<"dev-extend">>, <<"eu">>], - <<"cowboy.dev-extend.eu">>, undefined}}, - {<<"dev-extend..eu">>, - {[<<"dev-extend">>, <<>>, <<"eu">>], - <<"dev-extend..eu">>, undefined}}, - {<<"dev-extend.eu">>, - {[<<"dev-extend">>, <<"eu">>], <<"dev-extend.eu">>, undefined}}, - {<<"dev-extend.eu:8080">>, - {[<<"dev-extend">>, <<"eu">>], <<"dev-extend.eu">>, 8080}}, + {<<"cowboy.ninenines.eu">>, + {[<<"cowboy">>, <<"ninenines">>, <<"eu">>], + <<"cowboy.ninenines.eu">>, undefined}}, + {<<"ninenines..eu">>, + {[<<"ninenines">>, <<>>, <<"eu">>], + <<"ninenines..eu">>, undefined}}, + {<<"ninenines.eu">>, + {[<<"ninenines">>, <<"eu">>], <<"ninenines.eu">>, undefined}}, + {<<"ninenines.eu:8080">>, + {[<<"ninenines">>, <<"eu">>], <<"ninenines.eu">>, 8080}}, {<<"a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z">>, {[<<"a">>, <<"b">>, <<"c">>, <<"d">>, <<"e">>, <<"f">>, <<"g">>, <<"h">>, <<"i">>, <<"j">>, <<"k">>, <<"l">>, <<"m">>, <<"n">>, @@ -195,13 +195,13 @@ split_host_test_() -> split_host_fail_test_() -> Tests = [ - <<"dev-extend.eu:owns">>, - <<"dev-extend.eu: owns">>, - <<"dev-extend.eu:42fun">>, - <<"dev-extend.eu: 42fun">>, - <<"dev-extend.eu:42 fun">>, - <<"dev-extend.eu:fun 42">>, - <<"dev-extend.eu: 42">>, + <<"ninenines.eu:owns">>, + <<"ninenines.eu: owns">>, + <<"ninenines.eu:42fun">>, + <<"ninenines.eu: 42fun">>, + <<"ninenines.eu:42 fun">>, + <<"ninenines.eu:fun 42">>, + <<"ninenines.eu: 42">>, <<":owns">>, <<":42 fun">> ], @@ -233,14 +233,14 @@ split_path_test_() -> match_test_() -> Dispatch = [ - {[<<"www">>, '_', <<"dev-extend">>, <<"eu">>], [ + {[<<"www">>, '_', <<"ninenines">>, <<"eu">>], [ {[<<"users">>, '_', <<"mails">>], match_any_subdomain_users, []} ]}, - {[<<"dev-extend">>, <<"eu">>], [ + {[<<"ninenines">>, <<"eu">>], [ {[<<"users">>, id, <<"friends">>], match_extend_users_friends, []}, {'_', match_extend, []} ]}, - {[<<"dev-extend">>, var], [ + {[<<"ninenines">>, var], [ {[<<"threads">>, var], match_duplicate_vars, [we, {expect, two}, var, here]} ]}, @@ -255,22 +255,22 @@ match_test_() -> %% {Host, Path, Result} Tests = [ {[<<"any">>], [], {ok, match_any, [], []}}, - {[<<"www">>, <<"any">>, <<"dev-extend">>, <<"eu">>], + {[<<"www">>, <<"any">>, <<"ninenines">>, <<"eu">>], [<<"users">>, <<"42">>, <<"mails">>], {ok, match_any_subdomain_users, [], []}}, - {[<<"www">>, <<"dev-extend">>, <<"eu">>], + {[<<"www">>, <<"ninenines">>, <<"eu">>], [<<"users">>, <<"42">>, <<"mails">>], {ok, match_any, [], []}}, - {[<<"www">>, <<"dev-extend">>, <<"eu">>], [], {ok, match_any, [], []}}, - {[<<"www">>, <<"any">>, <<"dev-extend">>, <<"eu">>], + {[<<"www">>, <<"ninenines">>, <<"eu">>], [], {ok, match_any, [], []}}, + {[<<"www">>, <<"any">>, <<"ninenines">>, <<"eu">>], [<<"not_users">>, <<"42">>, <<"mails">>], {error, notfound, path}}, - {[<<"dev-extend">>, <<"eu">>], [], {ok, match_extend, [], []}}, - {[<<"dev-extend">>, <<"eu">>], [<<"users">>, <<"42">>, <<"friends">>], + {[<<"ninenines">>, <<"eu">>], [], {ok, match_extend, [], []}}, + {[<<"ninenines">>, <<"eu">>], [<<"users">>, <<"42">>, <<"friends">>], {ok, match_extend_users_friends, [], [{id, <<"42">>}]}}, {[<<"erlang">>, <<"fr">>], '_', {ok, match_erlang_ext, [], [{ext, <<"fr">>}]}}, {[<<"any">>], [<<"users">>, <<"444">>, <<"friends">>], {ok, match_users_friends, [], [{id, <<"444">>}]}}, - {[<<"dev-extend">>, <<"fr">>], [<<"threads">>, <<"987">>], + {[<<"ninenines">>, <<"fr">>], [<<"threads">>, <<"987">>], {ok, match_duplicate_vars, [we, {expect, two}, var, here], [{var, <<"fr">>}, {var, <<"987">>}]}} ], @@ -280,27 +280,27 @@ match_test_() -> match_info_test_() -> Dispatch = [ - {[<<"www">>, <<"dev-extend">>, <<"eu">>], [ + {[<<"www">>, <<"ninenines">>, <<"eu">>], [ {[<<"pathinfo">>, <<"is">>, <<"next">>, '...'], match_path, []} ]}, - {['...', <<"dev-extend">>, <<"eu">>], [ + {['...', <<"ninenines">>, <<"eu">>], [ {'_', match_any, []} ]} ], Tests = [ - {[<<"dev-extend">>, <<"eu">>], [], + {[<<"ninenines">>, <<"eu">>], [], {ok, match_any, [], [], [], undefined}}, - {[<<"bugs">>, <<"dev-extend">>, <<"eu">>], [], + {[<<"bugs">>, <<"ninenines">>, <<"eu">>], [], {ok, match_any, [], [], [<<"bugs">>], undefined}}, - {[<<"cowboy">>, <<"bugs">>, <<"dev-extend">>, <<"eu">>], [], + {[<<"cowboy">>, <<"bugs">>, <<"ninenines">>, <<"eu">>], [], {ok, match_any, [], [], [<<"cowboy">>, <<"bugs">>], undefined}}, - {[<<"www">>, <<"dev-extend">>, <<"eu">>], + {[<<"www">>, <<"ninenines">>, <<"eu">>], [<<"pathinfo">>, <<"is">>, <<"next">>], {ok, match_path, [], [], undefined, []}}, - {[<<"www">>, <<"dev-extend">>, <<"eu">>], + {[<<"www">>, <<"ninenines">>, <<"eu">>], [<<"pathinfo">>, <<"is">>, <<"next">>, <<"path_info">>], {ok, match_path, [], [], undefined, [<<"path_info">>]}}, - {[<<"www">>, <<"dev-extend">>, <<"eu">>], + {[<<"www">>, <<"ninenines">>, <<"eu">>], [<<"pathinfo">>, <<"is">>, <<"next">>, <<"foo">>, <<"bar">>], {ok, match_path, [], [], undefined, [<<"foo">>, <<"bar">>]}} ], diff --git a/src/cowboy_http.erl b/src/cowboy_http.erl index f8d3314..5814641 100644 --- a/src/cowboy_http.erl +++ b/src/cowboy_http.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% Copyright (c) 2011, Anthony Ramine %% %% Permission to use, copy, modify, and/or distribute this software for any diff --git a/src/cowboy_http_handler.erl b/src/cowboy_http_handler.erl index b220b09..de7c025 100644 --- a/src/cowboy_http_handler.erl +++ b/src/cowboy_http_handler.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_http_protocol.erl b/src/cowboy_http_protocol.erl index 9e1ad88..ef87af7 100644 --- a/src/cowboy_http_protocol.erl +++ b/src/cowboy_http_protocol.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% Copyright (c) 2011, Anthony Ramine %% %% Permission to use, copy, modify, and/or distribute this software for any diff --git a/src/cowboy_http_req.erl b/src/cowboy_http_req.erl index 8f1f789..3227e15 100644 --- a/src/cowboy_http_req.erl +++ b/src/cowboy_http_req.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% Copyright (c) 2011, Anthony Ramine %% %% Permission to use, copy, modify, and/or distribute this software for any diff --git a/src/cowboy_http_rest.erl b/src/cowboy_http_rest.erl index f9c856a..7f19c89 100644 --- a/src/cowboy_http_rest.erl +++ b/src/cowboy_http_rest.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_http_websocket.erl b/src/cowboy_http_websocket.erl index f550041..b7a146f 100644 --- a/src/cowboy_http_websocket.erl +++ b/src/cowboy_http_websocket.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_http_websocket_handler.erl b/src/cowboy_http_websocket_handler.erl index 2ea0a46..4947302 100644 --- a/src/cowboy_http_websocket_handler.erl +++ b/src/cowboy_http_websocket_handler.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_listener.erl b/src/cowboy_listener.erl index 4b2c2fb..d15851d 100644 --- a/src/cowboy_listener.erl +++ b/src/cowboy_listener.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_listener_sup.erl b/src/cowboy_listener_sup.erl index da6eca3..2ff2b64 100644 --- a/src/cowboy_listener_sup.erl +++ b/src/cowboy_listener_sup.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_protocol.erl b/src/cowboy_protocol.erl index 34bb1a1..9d4f263 100644 --- a/src/cowboy_protocol.erl +++ b/src/cowboy_protocol.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% Copyright (c) 2011, Michiel Hakvoort %% %% Permission to use, copy, modify, and/or distribute this software for any diff --git a/src/cowboy_requests_sup.erl b/src/cowboy_requests_sup.erl index ddd8d3b..794ed62 100644 --- a/src/cowboy_requests_sup.erl +++ b/src/cowboy_requests_sup.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_ssl_transport.erl b/src/cowboy_ssl_transport.erl index a661622..5a36bcc 100644 --- a/src/cowboy_ssl_transport.erl +++ b/src/cowboy_ssl_transport.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_sup.erl b/src/cowboy_sup.erl index 502c592..c0ef5e2 100644 --- a/src/cowboy_sup.erl +++ b/src/cowboy_sup.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/src/cowboy_tcp_transport.erl b/src/cowboy_tcp_transport.erl index 079494d..1ee3da9 100644 --- a/src/cowboy_tcp_transport.erl +++ b/src/cowboy_tcp_transport.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/test/dispatcher_prop.erl b/test/dispatcher_prop.erl index b6a1c92..163fcd8 100644 --- a/test/dispatcher_prop.erl +++ b/test/dispatcher_prop.erl @@ -1,5 +1,5 @@ %% Copyright (c) 2011, Magnus Klaar -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/test/http_SUITE.erl b/test/http_SUITE.erl index 8464ca0..5e9bcf1 100644 --- a/test/http_SUITE.erl +++ b/test/http_SUITE.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011-2012, Loïc Hoguin %% Copyright (c) 2011, Anthony Ramine %% %% Permission to use, copy, modify, and/or distribute this software for any @@ -358,7 +358,7 @@ The document has moved {400, "\n"}, {400, "Garbage\r\n\r\n"}, {400, "\r\n\r\n\r\n\r\n\r\n\r\n"}, - {400, "GET / HTTP/1.1\r\nHost: dev-extend.eu\r\n\r\n"}, + {400, "GET / HTTP/1.1\r\nHost: ninenines.eu\r\n\r\n"}, {400, "GET http://proxy/ HTTP/1.1\r\n\r\n"}, {400, ResponsePacket}, {408, "GET / HTTP/1.1\r\n"}, diff --git a/test/proper_SUITE.erl b/test/proper_SUITE.erl index 440aa5f..113e135 100644 --- a/test/proper_SUITE.erl +++ b/test/proper_SUITE.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above diff --git a/test/ws_SUITE.erl b/test/ws_SUITE.erl index 0c5e2c8..a3c140b 100644 --- a/test/ws_SUITE.erl +++ b/test/ws_SUITE.erl @@ -1,4 +1,4 @@ -%% Copyright (c) 2011, Loïc Hoguin +%% Copyright (c) 2011, Loïc Hoguin %% %% Permission to use, copy, modify, and/or distribute this software for any %% purpose with or without fee is hereby granted, provided that the above -- cgit v1.2.3