Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-09-06 | Add status codes 208 and 508 | Loïc Hoguin | |
2019-09-02 | Add cow_http2_machine:ensure_window/2,3 | Loïc Hoguin | |
These functions apply heuristics to reduce the number of times we send WINDOW_UPDATE frames. | |||
2019-07-27 | Add missing lingering_data in the spec | Loïc Hoguin | |
2019-07-26 | Don't return lingering_data when the length is 0 | Loïc Hoguin | |
2019-04-28 | Return lingering_data when received data in lingering | Tony Han | |
2019-04-03 | Don't use string:lowercase yet, not available in OTP-192.7.2 | Loïc Hoguin | |
2019-03-26 | :authority is not required by spec2.7.1 | Fredrik Enestad | |
2019-03-25 | Lowercase file extension in cow_mimetypes | David.Gao | |
2019-03-25 | Make sure iolist split uses N length | José Valim | |
The previous implementation would return "ok" under certain situations when more data could be fit into the buffer. By making "ok" explicitly mean length is 0, then we can simplify other parts of the codebase and fix a bug that could cause us to send less data then desired over the wire. | |||
2018-11-13 | Support uncompressed Websocket frames when deflate is enabled | Loïc Hoguin | |
2018-11-12 | Add deflate options for Websocket compression | Loïc Hoguin | |
They allow the server to configure what it is willing to accept for the negotiated configuration (takeover and window bits). | |||
2018-11-03 | Make cow_http_hd:parse_accept/1 lowercase charsets | Loïc Hoguin | |
Charsets are case insensitive. This is now in line with parse_accept_charset/1 and parse_content_type/1. | |||
2018-10-30 | Fixes various client issues in cow_http2_machine | Loïc Hoguin | |
2018-10-27 | Handle HTTP/2 timeouts in the state machine | Loïc Hoguin | |
2018-10-26 | Add cow_http2:parse_sequence/1 | Loïc Hoguin | |
2018-10-26 | Introduce cow_http2_machine, an HTTP/2 state machine | Loïc Hoguin | |
This is the result of a merge of the Cowboy and Gun HTTP/2 codes. It can probably do a little more but it's at a point where Cowboy works fine when using it so additional work will be done in other commits. The Gun code has not been switched to this module yet. I expect for example the PUSH_PROMISE code to fail at this point. This will be the next step. | |||
2018-09-28 | Add support for SameSite cookies | ECrownofFire | |
The SameSite cookie attribute has yet to appear in an official RFC, and until recently was exclusive to Chrome. However, Firefox has recently implemented it as well, so it seems prudent to support it. | |||
2018-09-17 | Add cow_http:parse_request_line/1 | Loïc Hoguin | |
2018-08-06 | Export two cow_http types used by Gun | Loïc Hoguin | |
2018-08-06 | Fix typespecs causing Dialyzer errors in user projects | Loïc Hoguin | |
2018-08-03 | Refactor some code to fix a Dialyzer warning | Loïc Hoguin | |
2018-08-02 | Fix parsing of lone id: lines in cow_sse | Loïc Hoguin | |
2018-06-25 | Add building of SSE events | Loïc Hoguin | |
2018-06-04 | Update copyrights | Loïc Hoguin | |
2018-05-18 | Add cow_http:status_to_integer | Loïc Hoguin | |
2018-05-07 | Import cow_iolists from Cowboy | Loïc Hoguin | |
2018-05-07 | Add 103 early hints as a valid status | Mark Madsen | |
2018-04-29 | Reject HEADERS/PRIORITY with streams depending on themselves | Loïc Hoguin | |
2018-04-29 | Accept infinity for some HTTP/2 SETTINGS | Loïc Hoguin | |
max_concurrent_streams and max_header_list_size to be precise. | |||
2018-04-25 | Fix http2 settings parsing when there's more data | Tony Han | |
2018-04-25 | Prevent the HPACK configured_max_size from being dropped | Loïc Hoguin | |
2018-04-23 | Add proper support for table size updates | Loïc Hoguin | |
2018-04-06 | Add the enable_connect_protocol HTTP/2 setting | Loïc Hoguin | |
2018-03-13 | Fix the parsing of the x-forwarded-for header | Loïc Hoguin | |
2018-03-05 | The Websocket subprotocol tokens are case sensitive | Loïc Hoguin | |
As clarified in https://tools.ietf.org/html/rfc7936 the IANA registry only accepts case insensitive values for clarity's sake but the actual tokens are case sensitive. | |||
2018-03-05 | Allow cookies without a value | Jonathan Perret | |
Some cookies are seen in the wild consisting of just a name, without even a "=" char. This allows parsing them as if they were written "foo=", that is with an empty value. Commit amended to add a few more test cases. | |||
2018-03-05 | Remove trailing whitespace from header values | Gustaf Sjoberg | |
Edited to add a test and use byte_size instead of size. | |||
2018-03-05 | Add the 308 Permanent Redirect status code | Loïc Hoguin | |
2017-11-28 | Add the 421 status code from HTTP/2 | Loïc Hoguin | |
2017-11-27 | Implement the building of h2 SETTINGS frames | Loïc Hoguin | |
2017-11-27 | Fix an error return value in cow_http2:parse/1 | Loïc Hoguin | |
2017-11-27 | Fix DATA payload size with padding | Loïc Hoguin | |
2017-11-22 | Crash on more error cases when parsing chnuked data | Loïc Hoguin | |
2017-11-15 | Add support for chunked transfer-encoding trailers | Loïc Hoguin | |
It considers all 0-sized chunks that aren't \r\n\r\n to be trailers. There's no option for enabling/disabling the behavior (for example when the te header was sent). It doesn't parse the trailer, it's up to the user to parse it separately via the new cow_http:headers/1 functions. Note that this reuses the TotalLength part of the returned 'done' tuple to signal whether there are trailers. This value has been ignored in Cowboy since 2.0 and was just a historical leftover. I'm not aware of anyone using this module outside of Gun or Cowboy, so I don't expect this to break anything. If it does, well, it's not a documented function anyway. Your fault. | |||
2017-10-31 | Fix Websocket compression for OTP 20.1.3+ | Loïc Hoguin | |
This issue only concerns zlib contexts that are created in a different process from the one they are used in. Unfortunately compression will have to remain disabled if you are using OTP 20.1, 20.1.1 or 20.1.2 due to missing functionality. If you need compression you will need to use another version. | |||
2017-10-03 | Update mimetypes | Loïc Hoguin | |
2017-07-10 | Add new module cow_base64url | Loïc Hoguin | |
It implements the algorithm found in RFC 7515 Appendix C https://tools.ietf.org/html/rfc7515#appendix-C with an option to switch between with/no padding variants. Relace the cow_multipart:boundary function to use this and fix issues with agents which do not support slashes in the boundary characters. | |||
2017-07-10 | Switch from Triq to Proper | Loïc Hoguin | |
2017-07-03 | Skip extra spaces and TE chunk extensions | Loïc Hoguin | |
2017-06-16 | Fix parsing of event spanning multiple parse calls | Loïc Hoguin | |