summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* cleanup: s/curl_debug/curl_dbg_debug in comments and docsDaniel Stenberg2019-08-083-7/+7
| | | | | | | | | | Leftovers from the function rename back in 76b63489495 Reported-by: Gisle Vanem Bug: https://github.com/curl/curl/commit/f3e0f071b14fcb46a453f69bdf4e062bcaacf362#com mitcomment-34601751 Closes #4203
* RELEASE-NOTES: syncedDaniel Stenberg2019-08-081-5/+19
|
* alt-svc: add protocol version selection maskingDaniel Stenberg2019-08-085-64/+69
| | | | | | | | | | | 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
* http3: fix the HTTP/3 in the request, make alt-svc set right versionsDaniel Stenberg2019-08-082-39/+46
| | | | Closes #4200
* alt-svc: send Alt-Used: in redirected requestsDaniel Stenberg2019-08-085-4/+17
| | | | | | | | | | | | | | | RFC 7838 section 5: When using an alternative service, clients SHOULD include an Alt-Used header field in all requests. Removed CURLALTSVC_ALTUSED again (feature is still EXPERIMENTAL thus this is deemed ok). You can disable sending this header just like you disable any other HTTP header in libcurl. Closes #4199
* CURLOPT_HTTP_VERSION: seting this to 3 forces HTTP/3 use directlyDaniel Stenberg2019-08-0816-39/+43
| | | | | | | | | | | | Even though it cannot fall-back to a lower HTTP version automatically. The safer way to upgrade remains via CURLOPT_ALTSVC. CURLOPT_H3 no longer has any bits that do anything and might be removed before we remove the experimental label. Updated the curl tool accordingly to use "--http3". Closes #4197
* docs/ALTSVC: remove what works and the experimental explanationDaniel Stenberg2019-08-071-49/+8
| | | | | | Also, put the TODO items at the bottom. Closes #4198
* docs/EXPERIMENTAL: explain what it means and what's experimental nowDaniel Stenberg2019-08-072-0/+23
|
* curl: make use of CURLINFO_RETRY_AFTER when retryingDaniel Stenberg2019-08-072-1/+17
| | | | | | | | If a Retry-After: header was used in the response, that value overrides other retry timing options. Fixes #3794 Closes #4195
* curl: use CURLINFO_PROTOCOL to check for HTTP(s)Daniel Stenberg2019-08-071-4/+3
| | | | ... instead of CURLINFO_EFFECTIVE_URL to avoid string operations.
* CURLINFO_RETRY_AFTER: parse the Retry-After header valueDaniel Stenberg2019-08-0714-6/+317
| | | | | | | | This is only the libcurl part that provides the information. There's no user of the parsed value. This change includes three new tests for the parser. Ref: #3794
* docs/ALTSVC.md: first basic file format descriptionDaniel Stenberg2019-08-071-0/+21
|
* curl: have -w's 'http_version' show '3' for HTTP/3Daniel Stenberg2019-08-071-1/+4
| | | | Closes #4196
* curl.h: add CURL_HTTP_VERSION_3 to the version enumDaniel Stenberg2019-08-074-2/+8
| | | | | It can't be set for CURLOPT_HTTP_VERSION, but it can be extracted with CURLINFO_HTTP_VERSION.
* quiche: make use of the connection timeout API properlyDaniel Stenberg2019-08-072-0/+11
|
* quiche: make POSTFIELDS posts workDaniel Stenberg2019-08-071-14/+27
|
* quiche: improved error handling and memory cleanupsDaniel Stenberg2019-08-072-21/+49
|
* quiche: flush egress in h3_stream_recv() tooDaniel Stenberg2019-08-071-0/+4
|
* RELEASE-NOTES: syncedDaniel Stenberg2019-08-061-4/+13
|
* os400: take care of CURLOPT_SASL_AUTHZID in curl_easy_setopt_ccsid().Patrick Monnerat2019-08-062-6/+2
| | | | | | | | | | | | Ref: https://github.com/curl/curl/issues/3653 Ref: https://github.com/curl/curl/pull/3790 NOTE: This commit was cherry-picked and is part of a series of commits that added the authzid feature for upcoming 7.66.0. The series was temporarily reverted in db8ec1f so that it would not ship in a 7.65.x patch release. Closes https://github.com/curl/curl/pull/4186
* tests: Fix the line endings for the SASL alt-auth testsJay Satiro2019-08-066-44/+44
| | | | | | | | | | | | | | | | | | | - Change data and protocol sections to CRLF line endings. Prior to this change the tests would fail or hang, which is because certain sections such as protocol require CRLF line endings. Follow-up to grandparent commit which added the tests. Ref: https://github.com/curl/curl/issues/3653 Ref: https://github.com/curl/curl/pull/3790 NOTE: This commit was cherry-picked and is part of a series of commits that added the authzid feature for upcoming 7.66.0. The series was temporarily reverted in db8ec1f so that it would not ship in a 7.65.x patch release. Closes https://github.com/curl/curl/pull/4186
* examples: Added SASL PLAIN authorisation identity (authzid) examplesSteve Holme2019-08-064-2/+304
| | | | | | | | | | | | Ref: https://github.com/curl/curl/issues/3653 Ref: https://github.com/curl/curl/pull/3790 NOTE: This commit was cherry-picked and is part of a series of commits that added the authzid feature for upcoming 7.66.0. The series was temporarily reverted in db8ec1f so that it would not ship in a 7.65.x patch release. Closes https://github.com/curl/curl/pull/4186
* curl: --sasl-authzid added to support CURLOPT_SASL_AUTHZID from the toolSteve Holme2019-08-0614-4/+358
| | | | | | | | | | | | Ref: https://github.com/curl/curl/issues/3653 Ref: https://github.com/curl/curl/pull/3790 NOTE: This commit was cherry-picked and is part of a series of commits that added the authzid feature for upcoming 7.66.0. The series was temporarily reverted in db8ec1f so that it would not ship in a 7.65.x patch release. Closes https://github.com/curl/curl/pull/4186
* sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZIDSteve Holme2019-08-0612-5/+99
| | | | | | | | | | | | | | | | | Added the ability for the calling program to specify the authorisation identity (authzid), the identity to act as, in addition to the authentication identity (authcid) and password when using SASL PLAIN authentication. Fixes #3653 Closes #3790 NOTE: This commit was cherry-picked and is part of a series of commits that added the authzid feature for upcoming 7.66.0. The series was temporarily reverted in db8ec1f so that it would not ship in a 7.65.x patch release. Closes https://github.com/curl/curl/pull/4186
* docs/HTTP3: refreshed as it is now in master and HTTP/3 can be testedDaniel Stenberg2019-08-061-14/+14
|
* mesalink: implement client authenticationYiming Jing2019-08-061-13/+49
| | | | Closes #4184
* curl_multi_poll: a sister to curl_multi_wait() that waits moreDaniel Stenberg2019-08-069-80/+161
| | | | | | | | | | | | | | | | | | | | | | | | Repeatedly we see problems where using curl_multi_wait() is difficult or just awkward because if it has no file descriptor to wait for internally, it returns immediately and leaves it to the caller to wait for a small amount of time in order to avoid occasional busy-looping. This is often missed or misunderstood, leading to underperforming applications. This change introduces curl_multi_poll() as a replacement drop-in function that accepts the exact same set of arguments. This function works identically to curl_multi_wait() - EXCEPT - for the case when there's nothing to wait for internally, as then this function will by itself wait for a "suitable" short time before it returns. This effectiely avoids all risks of busy-looping and should also make it less likely that apps "over-wait". This also changes the curl tool to use this funtion internally when doing parallel transfers and changes curl_easy_perform() to use it internally. Closes #4163
* quiche:h3_stream_recv return 0 at end of streamDaniel Stenberg2019-08-061-4/+1
| | | | | ... and remove some verbose messages we don't need. Made transfers from facebook.com work better.
* altsvc: make quiche use h3-22 nowDaniel Stenberg2019-08-061-2/+2
|
* quiche: show the actual version numberDaniel Stenberg2019-08-061-1/+1
|
* quiche: first working HTTP/3 requestDaniel Stenberg2019-08-064-31/+89
| | | | | | | | | - enable debug log - fix use of quiche API - use download buffer - separate header/body Closes #4193
* http09: disable HTTP/0.9 by default in both tool and libraryDaniel Stenberg2019-08-0612-30/+59
| | | | | | | | As the plan has been laid out in DEPRECATED. Update docs accordingly and verify in test 1174. Now requires the option to be set to allow HTTP/0.9 responses. Closes #4191
* quiche: initial h3 request send/receiveDaniel Stenberg2019-08-053-24/+373
|
* lib/Makefile.am: make checksrc run in vquic tooDaniel Stenberg2019-08-051-1/+1
|
* altsvc: fix removal of expired cache entryDaniel Stenberg2019-08-051-0/+1
| | | | Closes #4192
* RELEASE-NOTES: syncedDaniel Stenberg2019-08-041-4/+33
|
* md4: Use our own MD4 implementation when no crypto libraries are availableSteve Holme2019-08-043-43/+11
| | | | Closes #3780
* md4: No need to include Curl_md4.h for each TLS librarySteve Holme2019-08-041-7/+1
|
* md4: No need for the NTLM code to call Curl_md4it() for each TLS librarySteve Holme2019-08-041-20/+7
| | | | | As the NTLM code no longer calls any of TLS libraries' specific MD4 functions, there is no need to call this function for each #ifdef.
* md4: Move the mbed TLS MD4 implementation out of the NTLM codeSteve Holme2019-08-043-21/+51
|
* md4: Move the WinCrypt implementation out of the NTLM codeSteve Holme2019-08-043-18/+58
|
* md4: Move the SecureTransport implementation out of the NTLM codeSteve Holme2019-08-043-5/+52
|
* md4: Use the Curl_md4it() function for OpenSSL based NTLMSteve Holme2019-08-043-26/+13
|
* md4: Move the GNU TLS gcrypt MD4 implementation out of the NTLM codeSteve Holme2019-08-043-11/+39
|
* md4: Move the GNU TLS Nettle MD4 implementation out of the NTLM codeSteve Holme2019-08-043-25/+80
|
* OS400: Add CURLOPT_H3 symbolsJay Satiro2019-08-042-0/+10
| | | | | | Follow-up to 3af0e76 which added experimental H3 support. Closes https://github.com/curl/curl/pull/4185
* url: make use of new HTTP version if alt-svc has oneDaniel Stenberg2019-08-031-2/+31
|
* url: set conn->transport to default TCP at init timeDaniel Stenberg2019-08-031-1/+1
|
* altsvc: with quiche, use the quiche h3 alpn stringDaniel Stenberg2019-08-031-0/+9
| | | | Closes #4183
* alt-svc: more liberal ALPN name parsingDaniel Stenberg2019-08-032-2/+2
| | | | | | | | | 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