aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2013-04-26Merge branch 'remove_asserts' of git://github.com/Egobrain/cowboyLoïc Hoguin
2013-04-26Removed asserts from unit testsEgobrain
2013-04-26Merge branch 'pr-381-fix' of git://github.com/seletskiy/cowboyLoïc Hoguin
2013-04-26Fix indenting issues in `cowboy_rest.erl`Seletskiy Stanislav
2013-04-26Add default CTP: "text/html" maps to `to_html`Seletskiy Stanislav
2013-04-25Cookie names are case sensitiveLoïc Hoguin
This should be more in line with what browsers are doing, and will prevent errors due to failed expectations.
2013-04-22Fix an outdated commentLoïc Hoguin
2013-04-20REST is no longer experimentalLoïc Hoguin
2013-04-20Fix POST behavior in RESTLoïc Hoguin
The resource accept callback can trigger the following responses: * returns true, new resource, location header set: 201 * returns true, otherwise: 200, 204 or 300 (depends on body) * returns false: 422 * returns URL, new resource: 201 * returns URL, otherwise: 303
2013-04-15Build Allow header with a binary comprehensionLoïc Hoguin
2013-04-12Add default operations for OPTIONS method in RESTLoïc Hoguin
It defaults to setting the Allow header to "HEAD, GET, OPTIONS".
2013-04-12Don't receive data from the socket only once in the loop handlerLoïc Hoguin
2013-04-12Ensure we can fetch the body in the info/3 function of loop handlersLoïc Hoguin
2013-04-12rest: reject incorrect content-type headerVladimir Dronnikov
2013-04-12missing comma in documentation of static examplesAndrzej Sliwa
2013-04-11Merge branch 'iolist_path_support' of git://github.com/tsloughter/cowboyLoïc Hoguin
2013-04-11Merge branch 'fix/sendfile-error-handling' of git://github.com/soundrop/cowboyLoïc Hoguin
2013-04-11Don't accept TRACE or CONNECT methods by default in RESTLoïc Hoguin
For the simple reason that the REST code does nothing about them.
2013-04-11Remove process_post, post_is_create, create_path, created_path callbacksLoïc Hoguin
Instead it will always go through content_types_accepted and it is up to the resource code to do any creation and to return the created path if the method is POST and the client should be redirected to the created resource's location. This removes the meta value 'put_path' as it is not needed anymore. This fixes an issue with PATCH where content types were not normalized.
2013-04-11Remove cowboy_req:peer_addr/1Loïc Hoguin
This kind of function is highly dependent on the proxy used, therefore parsing was added for x-forwarded-for instead and we just let users write the function that works for them. The code can be easily extracted if anyone was using the function.
2013-04-11Parse the x-forwarded-for header as a list of tokensLoïc Hoguin
2013-04-11Shorten the parse_header clausesLoïc Hoguin
2013-04-11No need for fully qualified call to the same moduleLoïc Hoguin
2013-04-09Switch the arguments to cowboy_req:stream_body/2Loïc Hoguin
Make them consistent with the rest of the module.
2013-04-08Do not crash if connection times out while sending a file using sendfileAli Sabil
2013-04-03Update to 0.8.30.8.3Loïc Hoguin
2013-04-03Update Ranch to 0.8.0Loïc Hoguin
2013-04-02Replace init_stream/5 with stream_body/2Loïc Hoguin
This allows us to change the max chunk length on a per chunk basis instead of for the whole stream. It's also much easier to use this way even if we don't want to change the chunk size.
2013-03-24add iolist support to route_matchTristan Sloughter
2013-03-09Update to 0.8.20.8.2Loïc Hoguin
2013-03-06Merge branch 'check-body-length' of git://github.com/rambocoder/cowboyLoïc Hoguin
2013-03-06Stop using binary:match in cowboy_protocolLoïc Hoguin
It's been found slower than a custom equivalent to what we were using it for. As this is the critical path we prefer the custom solution.
2013-03-06Check the length before reading the body in body/1 and body_qs/1rambocoder
2013-03-05Make streamed chunk size configurableLoïc Hoguin
Defaults to a maximum of 1000000 bytes. Also standardize the te_identity and te_chunked decoding functions. Now they both try to read as much as possible (up to the limit), making body reading much faster when not using chunked encoding.
2013-03-05Handle identity transfer-encoding when determining body lengthLoïc Hoguin
2013-03-03Add '*' matcher for parametersSlava Yurin
For get_type_provided: '*' will be match any parameters of media-range in "accept" header. If '*' matched, then '*' is replaced by the matching parameters. If Accept header is missing and '*' using, then in media_type in parameters will be '*' and reply content-type will be without any parameters. For content_types_accepted: '*' will be match any parameters in "content-type" header.
2013-03-02Fix cowboy_router typesLoïc Hoguin
2013-03-01Make path check cross-platform and generally saferLoïc Hoguin
2013-02-27Optimize cowboy_static:rest_init/2Loïc Hoguin
2013-02-27Remove extraneous newlines in cowboy_staticLoïc Hoguin
2013-02-27Fix an incorrect comment in cowboy_routerLoïc Hoguin
2013-02-22Fix to prevent loop handler awakening immediately after response sentJames Fish
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-22Update to 0.8.10.8.1Loïc Hoguin
2013-02-21Added warn compile options. Fixed compile warnings.Egobrain
2013-02-20Add cowboy:set_env/3Loïc Hoguin
2013-02-17Merge branch 'fix-handler-spec' of git://github.com/fishcakez/cowboyLoïc Hoguin
2013-02-17Merge branch 'sub_protocol-behaviour' of git://github.com/fishcakez/cowboyLoïc Hoguin
2013-02-17Fix {suspend, ...} specs to use atom() for function nameJames Fish
2013-02-16Add sub protocol behaviourJames Fish
2013-02-15Make sure socket is passive once we've done with loop handlerAndrew Majorov
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.