aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2017-11-22Crash on more error cases when parsing chnuked dataLoïc Hoguin
2017-11-15Add support for chunked transfer-encoding trailersLoï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-31Fix 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-03Update mimetypesLoïc Hoguin
2017-07-10Add new module cow_base64urlLoï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-10Switch from Triq to ProperLoïc Hoguin
2017-07-03Skip extra spaces and TE chunk extensionsLoïc Hoguin
2017-06-16Fix parsing of event spanning multiple parse callsLoïc Hoguin
2017-06-08Accept headers as map in cow_multipart:form_data/1Loïc Hoguin
2017-06-08cow_multipart:from_data/1 doesn't return transfer-encoding anymoreLoïc Hoguin
That header is deprecated in the context of HTTP.
2017-06-08Crash cookie parsing with badarg on errorLoïc Hoguin
2017-05-23Add building of PRIORITY frameLoïc Hoguin
2017-05-19Add functions for creating WINDOW_UPDATE h2 framesLoïc Hoguin
2017-04-27Add cow_sse module which implements parsing of SSELoïc Hoguin
Building of events will be implemented at a later time.
2017-04-18Add support for HTTP 451 (RFC 7725)Nicholas Lundgaard
See [rfc7725 section 3](https://tools.ietf.org/html/rfc7725#section-3).
2017-02-26Unknown HTTP/2 frames are ignoredLoïc Hoguin
2017-02-25Add frame size related error cases to cow_http2:parseLoïc Hoguin
2017-02-25Add cow_http:goaway/2Loïc Hoguin
2017-02-16Update a comment about zlib deflate optionLoïc Hoguin
2016-10-21Arrange function orderLoïc Hoguin
2016-10-21fixed names of test functions for cow_date:rfc2109/1Andrei Nesterov
2016-10-21Add support for IMF-fixdate formated date generationAndrei Nesterov
2016-10-09Fix HTTP/2 parsing of WINDOW_UPDATE framesPablo Polvorin
Fix for cases where the full frame is not received in one go.
2016-10-09Fix HPACK table size tracking when table is prunedPablo Polvorin
The new entry size wasn't being added to the table size after a prune. Also fixes incorrect test cases. The size number was different than the one found in RFC 7541 Appendix C.
2016-10-09Fix parsing of HTTP/2 PING framesPablo Polvorin
Fix for cases where the full frame is not received in one go.
2016-10-04Fix Dialyzer warningsLoïc Hoguin
2016-10-03Add owner option to set owner of Websocket compression contextsLoïc Hoguin
Required by Cowboy 2 because it initializes the contexts in a different process than where they are used.
2016-10-03Update mimetypesLoïc Hoguin
2016-06-09Merge branch 'master' of https://github.com/leoliu/cowlibLoïc Hoguin
2016-06-08Fix #39: Prefer crypto:strong_rand_bytes/1Leo Liu
See also https://github.com/erlang/otp/pull/883
2016-06-07Add cow_http_hd:access_control_max_age/1Andrei Nesterov
2016-06-07Add cow_http_hd:access_control_expose_headers/1Andrei Nesterov
2016-06-07Add cow_http_hd:access_control_allow_origin/1Andrei Nesterov
2016-06-07Add cow_http_hd:access_control_allow_methods/1Andrei Nesterov
2016-06-07Add cow_http_hd:access_control_allow_headers/1Andrei Nesterov
2016-06-07Add internal cow_http_hd:join_token_list/1, cow_http_hd:join_token_list/2Andrei Nesterov
2016-06-07Add cow_http_hd:access_control_allow_credentials/0Andrei Nesterov
2016-06-07Add cow_http_hd:parse_access_control_request_method/1Andrei Nesterov
2016-06-07Add cow_http_hd:parse_access_control_request_headers/1Andrei Nesterov
2016-06-07Add cow_http_hd:parse_origin/1Andrei Nesterov
2016-06-06Add a cow_http2:data_header/3 functionLoïc Hoguin
For use with sendfile or streaming in general.
2016-06-06Make cow_http:parse_fullpath/1 remove any fragment componentLoïc Hoguin
2016-06-06Add cow_uri:urlencode/1 and cow_uri:urldecode/1Loïc Hoguin
These are expected to be used on path components, unlike cow_qs:url{en,de}code/1 which are for query strings.
2016-05-24HPACK: Fix an issue with header values as iolistsLoïc Hoguin
2016-03-13Parse the settings payload directly in cow_http_hd:parse_http2_settings/1Loïc Hoguin
2016-03-12Add cow_http_hd:parse_http2_settings/1Loïc Hoguin
No tests or benchmarks, we just call base64:decode on the value.
2016-03-12Add settings_payload/1, settings_ack/0 and ping/1 in cow_http2Loïc Hoguin
Although settings_payload/1 is currently only a placeholder.
2016-03-12Add cow_http:response/3Loïc Hoguin
2015-08-26Merge branch 'master' of https://github.com/robashton/cowlibLoïc Hoguin
2015-08-26Merge branch 'cookie-opts-default-values' of https://github.com/KrzysiekJ/cowlibLoïc Hoguin