aboutsummaryrefslogtreecommitdiff
path: root/lib/altsvc.c
AgeCommit message (Collapse)Author
2020-05-25altsvc: fix parser for lines ending with CRLFDaniel Stenberg
Fixed the alt-svc parser to treat a newline as end of line. The unit tests in test 1654 were done without CRLF and thus didn't quite match the real world. Now they use CRLF as well. Reported-by: Peter Wu Assisted-by: Peter Wu Assisted-by: Jay Satiro Fixes #5445 Closes #5446
2020-05-25ngtcp2: fix build with current ngtcp2 master implementing draft 28Peter Wu
Based on client.cc changes from ngtcp2. Tested with current git master, ngtcp2 commit c77d5731ce92, nghttp3 commit 65ff479d4380. Fixes #5444 Closes #5443
2020-03-02altsvc: both h3 backends now speak h3-27Daniel Stenberg
... also updated the HTTP3 build description for ngtcp2 accordingly.
2020-02-18altsvc: make saving the cache an atomic operationDaniel Stenberg
... by writing the file to temp name then rename to the final when done. Assisted-by: Jay Satiro Fixes #4936 Closes #4942
2020-02-09altsvc: keep a copy of the file name to survive handle resetDaniel Stenberg
The alt-svc cache survives a call to curl_easy_reset fine, but the file name to use for saving the cache was cleared. Now the alt-svc cache has a copy of the file name to survive handle resets. Added test 1908 to verify. Reported-by: Craig Andrews Fixes #4898 Closes #4902
2020-02-04altsvc: set h3 version at a common single spotDaniel Stenberg
... and move the #ifdefs out of the functions. Addresses the fact they were different before this change. Reported-by: Harry Sintonen Closes #4876
2020-02-04altsvc: improved header parserHarry Sintonen
- Fixed the flag parsing to apply to specific alternative entry only, as per RFC. The earlier code would also get totally confused by multiprotocol header, parsing flags from the wrong part of the header. - Fixed the parser terminating on unknown protocols, instead of skipping them. - Fixed a busyloop when protocol-id was present without an equal sign. Closes #4875
2020-01-30altsvc: use h3-25Daniel Stenberg
Closes #4868
2019-12-12altsvc: make the save function ignore NULL filenamesDaniel Stenberg
It might happen in OOM situations. Detected bv torture tests. Closes #4707
2019-11-29parsedate: offer a getdate_capped() alternativeDaniel Stenberg
... and use internally. This function will return TIME_T_MAX instead of failure if the parsed data is found to be larger than what can be represented. TIME_T_MAX being the largest value curl can represent. Reviewed-by: Daniel Gustafsson Reported-by: JanB on github Fixes #4152 Closes #4651
2019-11-18altsvc: bump to h3-24Daniel Stenberg
... as both ngtcp2 and quiche now support that in their master branches Closes #4604
2019-09-30altsvc: accept quoted ma and persist valuesDaniel Stenberg
As mandated by the spec. Test 1654 is extended to verify. Closes #4443
2019-09-25altsvc: correct the #ifdef for the ngtcp2 backendDaniel Stenberg
2019-09-25altsvc: save h3 as h3-23Daniel Stenberg
Follow-up to d176a2c7e5
2019-09-21altsvc: both backends run h3-23 nowDaniel Stenberg
Closes #4395
2019-08-12altsvc: make it use h3-22 with ngtcp2 as wellDaniel Stenberg
2019-08-08alt-svc: add protocol version selection maskingDaniel Stenberg
So that users can mask in/out specific HTTP versions when Alt-Svc is used. - Removed "h2c" and updated test case accordingly - Changed how the altsvc struct is laid out - Added ifdefs to make the unittest run even in a quiche-tree Closes #4201
2019-08-06altsvc: make quiche use h3-22 nowDaniel Stenberg
2019-08-05altsvc: fix removal of expired cache entryDaniel Stenberg
Closes #4192
2019-08-03altsvc: with quiche, use the quiche h3 alpn stringDaniel Stenberg
Closes #4183
2019-08-03alt-svc: more liberal ALPN name parsingDaniel Stenberg
Allow pretty much anything to be part of the ALPN identifier. In particular minus, which is used for "h3-20" (in-progress HTTP/3 versions) etc. Updated test 356. Closes #4182
2019-05-16cleanup: remove FIXME and TODO commentsDaniel Stenberg
They serve very little purpose and mostly just add noise. Most of them have been around for a very long time. I read them all before removing or rephrasing them. Ref: #3876 Closes #3883
2019-04-20altsvc: Fix building with cookies disablesPo-Chuan Hsieh
ALTSVC requires Curl_get_line which is defined in lib/cookie.c inside a #if check of HTTP and COOKIES. That makes Curl_get_line undefined if COOKIES is disabled. Fix by splitting out the function into a separate file which can be included where needed. Closes #3717 Reviewed-by: Daniel Gustafsson <daniel@yesql.se> Reviewed-by: Marcel Raad <Marcel.Raad@teamviewer.com>
2019-03-22lib: Fix typos in commentsDaniel Gustafsson
2019-03-03altsvc_out: check the return code from Curl_gmtimeDaniel Stenberg
Pointed out by Coverity, CID 1442956. Closes #3640
2019-03-03alt-svc: the libcurl bitsDaniel Stenberg