summaryrefslogtreecommitdiff
path: root/tests/data/Makefile.inc
Commit message (Collapse)AuthorAgeFilesLines
* transfer: Switch PUT to GET/HEAD on 303 redirectJay Satiro2020-04-221-1/+1
| | | | | | | | | | | | | | Prior to this change if there was a 303 reply to a PUT request then the subsequent request to respond to that redirect would also be a PUT. It was determined that was most likely incorrect based on the language of the RFCs. Basically 303 means "see other" resource, which implies it is most likely not the same resource, therefore we should not try to PUT to that different resource. Refer to the discussions in #5237 and #5248 for more information. Fixes https://github.com/curl/curl/issues/5237 Closes https://github.com/curl/curl/pull/5248
* mqtt: improve the state machineDaniel Stenberg2020-04-201-1/+1
| | | | | | | | | | To handle PUBLISH before SUBACK and more. Updated the existing tests and added three new ones. Reported-by: Christoph Krey Bug: https://curl.haxx.se/mail/lib-2020-04/0021.html Closes #5246
* add more alt-svc test coveragexquery2020-04-201-1/+2
|
* mime: properly check Content-Type even if it has parametersPatrick Monnerat2020-04-191-1/+1
| | | | | | | | New test 669 checks this fix is effective. Fixes #5256 Closes #5258 Reported-by: thanhchungbtc on github
* tests: add four MQTT tests 1190 - 1193Daniel Stenberg2020-04-141-0/+2
|
* tests: verify split initial HTTP requests with CURL_SMALLREQSENDDaniel Stenberg2020-04-081-27/+26
| | | | | | | | | | test1294: "split request" being when the entire request isn't sent in the first go, and the remainder is sent in the PERFORM state. A GET request is otherwise not sending anything during PERFORM. test1295: same kind of split but with POST Closes #5197
* test1566: verify --etag-compare that gets a 304 backDaniel Stenberg2020-04-051-0/+1
| | | | | | Verifies the fix in #5183 Closes #5186
* curl: allow both --etag-compare and --etag-save with same file nameKwon-Young Choi2020-04-051-1/+1
| | | | | | | | | | | | This change inverse the order of processing for the --etag-compare and --etag-save option to process first --etag-compare. This in turn allows to use the same file name to compare and save an etag. The original behavior of not failing if the etag file does not exists is conserved. Fixes #5179 Closes #5180
* test1177: verify that all the CURL_VERSION_ bits are documentedDaniel Stenberg2020-03-291-1/+1
|
* tests: add test 430, 431 and 432 to verify the --config fixDaniel Stenberg2020-03-201-0/+2
| | | | Verify the fixes in 4e0b4fee4
* schannel: add "best effort" revocation check optionJohannes Schindelin2020-03-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Implement new option CURLSSLOPT_REVOKE_BEST_EFFORT and --ssl-revoke-best-effort to allow a "best effort" revocation check. A best effort revocation check ignores errors that the revocation check was unable to take place. The reasoning is described in detail below and discussed further in the PR. --- When running e.g. with Fiddler, the schannel backend fails with an unhelpful error message: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate. Sadly, many enterprise users who are stuck behind MITM proxies suffer the very same problem. This has been discussed in plenty of issues: https://github.com/curl/curl/issues/3727, https://github.com/curl/curl/issues/264, for example. In the latter, a Microsoft Edge developer even made the case that the common behavior is to ignore issues when a certificate has no recorded distribution point for revocation lists, or when the server is offline. This is also known as "best effort" strategy and addresses the Fiddler issue. Unfortunately, this strategy was not chosen as the default for schannel (and is therefore a backend-specific behavior: OpenSSL seems to happily ignore the offline servers and missing distribution points). To maintain backward-compatibility, we therefore add a new flag (`CURLSSLOPT_REVOKE_BEST_EFFORT`) and a new option (`--ssl-revoke-best-effort`) to select the new behavior. Due to the many related issues Git for Windows and GitHub Desktop, the plan is to make this behavior the default in these software packages. The test 2070 was added to verify this behavior, adapted from 310. Based-on-work-by: georgeok <giorgos.n.oikonomou@gmail.com> Co-authored-by: Markus Olsson <j.markus.olsson@gmail.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Closes https://github.com/curl/curl/pull/4981
* test 970: verify --write-out '%{json}'Daniel Stenberg2020-03-171-1/+1
| | | | | | | | | | | Makes curl_easy_getinfo() of "variable" numerical content instead return the number set in the env variable `CURL_TIME`. Makes curl_version() of "variable" textual content. This guarantees a stable version string which can be tested against. Environment variable `CURL_VERSION` defines the content. Assisted-by: Mathias Gumz
* sftp: fix segfault regression introduced by #4747Jim Fuller2020-03-091-1/+1
| | | | | | | | This fix adds a defensive check for the case where the char *name in struct libssh2_knownhost is NULL Fixes #5041 Closes #5062
* mime: fix the binary encoder to handle large data properlyPatrick Monnerat2020-03-071-1/+1
| | | | | | | | | | New test 666 checks this is effective. As upload buffer size is significant in this kind of tests, shorten it in similar test 652. Fixes #4860 Closes #4833 Reported-by: RuurdBeerstra on github
* mime: do not perform more than one read in a rowPatrick Monnerat2020-03-071-1/+1
| | | | | | | | | | | | | | | | | | | | | Input buffer filling may delay the data sending if data reads are slow. To overcome this problem, file and callback data reads do not accumulate in buffer anymore. All other data (memory data and mime framing) are considered as fast and still concatenated in buffer. As this may highly impact performance in terms of data overhead, an early end of part data check is added to spare a read call. When encoding a part's data, an encoder may require more bytes than made available by a single read. In this case, the above rule does not apply and reads are performed until the encoder is able to deliver some data. Tests 643, 644, 645, 650 and 654 have been adapted to the output data changes, with test data size reduced to avoid the boredom of long lists of 1-byte chunks in verification data. New test 667 checks mimepost using single-byte read callback with encoder. New test 668 checks the end of part data early detection. Fixes #4826 Reported-by: MrdUkk on github
* mime: latch last read callback status.Patrick Monnerat2020-03-071-0/+1
| | | | | | | | | | | | | In case a read callback returns a status (pause, abort, eof, error) instead of a byte count, drain the bytes read so far but remember this status for further processing. Takes care of not losing data when pausing, and properly resume a paused mime structure when requested. New tests 670-673 check unpausing cases, with easy or multi interface and mime or form api. Fixes #4813 Reported-by: MrdUkk on github
* libssh: Fix matching user-specified MD5 hex keyJay Satiro2020-03-071-1/+1
| | | | | | | | | | | Prior to this change a match would never be successful because it was mistakenly coded to compare binary data from libssh to a user-specified hex string (ie CURLOPT_SSH_HOST_PUBLIC_KEY_MD5). Reported-by: fds242@users.noreply.github.com Fixes https://github.com/curl/curl/issues/4971 Closes https://github.com/curl/curl/pull/4974
* Revert "mime: latch last read callback status."Daniel Stenberg2020-03-021-1/+0
| | | | | | | | This reverts commit 87869e38d7afdec3ef1bb4965711458b088e254f. Fixes #5014 Closes #5015 Reopens #4833
* Revert "mime: do not perform more than one read in a row"Daniel Stenberg2020-03-021-1/+1
| | | | This reverts commit ed0f357f7d25566110d4302f33759f4ffb5a6f83.
* Revert "mime: fix the binary encoder to handle large data properly"Daniel Stenberg2020-03-021-1/+1
| | | | This reverts commit b2caaa0681f329eed317ffb6ae6927f4a539f0c1.
* mime: fix the binary encoder to handle large data properlyPatrick Monnerat2020-03-021-1/+1
| | | | | | | | | New test 666 checks this is effective. As upload buffer size is significant in this kind of tests, shorten it in similar test 652. Fixes #4860 Reported-by: RuurdBeerstra on github
* mime: do not perform more than one read in a rowPatrick Monnerat2020-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | Input buffer filling may delay the data sending if data reads are slow. To overcome this problem, file and callback data reads do not accumulate in buffer anymore. All other data (memory data and mime framing) are considered as fast and still concatenated in buffer. As this may highly impact performance in terms of data overhead, an early end of part data check is added to spare a read call. When encoding a part's data, an encoder may require more bytes than made available by a single read. In this case, the above rule does not apply and reads are performed until the encoder is able to deliver some data. Tests 643, 644, 645, 650 and 654 have been adapted to the output data changes, with test data size reduced to avoid the boredom of long lists of 1-byte chunks in verification data. New test 664 checks mimepost using single-byte read callback with encoder. New test 665 checks the end of part data early detection. Fixes #4826 Reported-by: MrdUkk on github
* mime: latch last read callback status.Patrick Monnerat2020-03-021-0/+1
| | | | | | | | | | | | | | In case a read callback returns a status (pause, abort, eof, error) instead of a byte count, drain the bytes read so far but remember this status for further processing. Takes care of not losing data when pausing, and properly resume a paused mime structure when requested. New tests 670-673 check unpausing cases, with easy or multi interface and mime or form api. Fixes #4813 Reported-by: MrdUkk on github Closes #4833
* http: added 417 response treatmentDaniel Stenberg2020-02-261-1/+1
| | | | | | | | | | | | | | | When doing a request with a body + Expect: 100-continue and the server responds with a 417, the same request will be retried immediately without the Expect: header. Added test 357 to verify. Also added a control instruction to tell the sws test server to not read the request body if Expect: is present, which the new test 357 uses. Reported-by: bramus on github Fixes #4949 Closes #4964
* smtp: Support the SMTPUTF8 extension for the EXPN commandSteve Holme2020-02-261-1/+1
| | | | Simply notify the server we support the SMTPUTF8 extension if it does.
* smtp: Support the SMTPUTF8 extension in the VRFY commandSteve Holme2020-02-261-1/+1
|
* smtp: Support the SMTPUTF8 extension in the RCPT TO commandSteve Holme2020-02-261-1/+1
| | | | | | Note: The RCPT TO command isn't required to advertise to the server that it contains UTF-8 characters, instead the server is told that a mail may contain UTF-8 in any envelope command via the MAIL command.
* smtp: Support the SMTPUTF8 extension in the MAIL commandSteve Holme2020-02-261-1/+1
| | | | | | | | | | Support the SMTPUTF8 extension when sending mailbox information in the MAIL command (FROM and AUTH parameters). Non-ASCII domain names will be ACE encoded, if IDN is supported, whilst non-ASCII characters in the local address part are passed to the server. Reported-by: ygthien on github Fixes #4828
* smtp: Support UTF-8 based host names in the VRFY commandSteve Holme2020-02-261-1/+1
|
* smtp: Support UTF-8 based host names in the RCPT TO commandSteve Holme2020-02-261-0/+1
|
* smtp: Support UTF-8 based host names in the MAIL commandSteve Holme2020-02-261-1/+1
| | | | Non-ASCII host names will be ACE encoded if IDN is supported.
* smtp: Added UTF-8 mailbox tests to verify existing behaviourSteve Holme2020-02-251-1/+1
|
* hmac: Added a unit test for the HMAC hash generationSteve Holme2020-02-241-1/+1
| | | | Closes #4973
* tests: Added a unit test for MD4 digest generationSteve Holme2020-02-231-1/+1
| | | | Closes #4970
* tests: Added a unit test for SHA256 digest generationSteve Holme2020-02-221-1/+3
| | | | | | Follow up to 2b5b37c. Closes #4968
* altsvc: keep a copy of the file name to survive handle resetDaniel Stenberg2020-02-091-0/+1
| | | | | | | | | | | | 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
* ftp: remove superfluous checking for crlf in user or pwdDaniel Stenberg2020-02-071-2/+1
| | | | | | | | | ... as this is already done much earlier in the URL parser. Also add test case 894 that verifies that pop3 with an encodedd CR in the user name is rejected. Closes #4887
* smtp: Allow RCPT TO command to fail for some recipientsPavel Volgarev2020-01-211-1/+2
| | | | | | | | Introduces CURLOPT_MAIL_RCPT_ALLLOWFAILS. Verified with the new tests 3002-3007 Closes #4816
* curl: make #0 not output the full URLDaniel Stenberg2020-01-131-1/+1
| | | | | | | | | | It was not intended nor documented! Added test 1176 to verify. Reported-by: vshmuk on hackerone Closes #4812
* test1167: verify global symbols in public headers are curl prefixedDaniel Stenberg2020-01-091-1/+2
| | | | | | | ... using the new badsymbols.pl perl script Fixes #4793 Closes #4794
* curl -w: handle a blank input file correctlyDaniel Stenberg2020-01-061-1/+1
| | | | | | | | | | Previously it would end up with an uninitialized memory buffer that would lead to a crash or junk getting output. Added test 1271 to verify. Reported-by: Brian Carpenter Closes #4786
* curl: properly free mimepost dataDaniel Stenberg2020-01-041-2/+2
| | | | | | | | | | ... as it could otherwise leak memory when a transfer failed. Added test 1293 to verify. Reported-by: Brian Carpenter Fixes #4781 Closes #4782
* test1270: a basic -w redirect_url testDaniel Stenberg2019-12-181-1/+1
| | | | Closes #4728
* etag: allow both --etag-compare and --etag-save in same cmdlineDaniel Stenberg2019-12-051-1/+1
| | | | | Fixes #4669 Closes #4678
* curl: two new command line options for etagsMaros Priputen2019-11-281-2/+1
| | | | | | | | --etag-compare and --etag-save Suggested-by: Paul Hoffman Fixes #4277 Closes #4543
* multi: add curl_multi_wakeup()Gergely Nagy2019-11-251-1/+1
| | | | | | | | | | | | This commit adds curl_multi_wakeup() which was previously in the TODO list under the curl_multi_unblock name. On some platforms and with some configurations this feature might not be available or can fail, in these cases a new error code (CURLM_WAKEUP_FAILURE) is returned from curl_multi_wakeup(). Fixes #4418 Closes #4608
* test1175: verify symbols-in-versions and libcurl-errors.3 in syncDaniel Stenberg2019-11-221-1/+1
| | | | Closes #4628
* curl: fix -T globbingDaniel Stenberg2019-11-141-0/+2
| | | | | | | | | | | | Regression from e59371a4936f8 (7.67.0) Added test 490, 491 and 492 to verify the functionality. Reported-by: Kamil Dudka Reported-by: Anderson Sasaki Fixes #4588 Closes #4591
* conn-reuse: requests wanting NTLM can reuse non-NTLM connectionsDaniel Stenberg2019-10-231-1/+1
| | | | | | | | Added test case 338 to verify. Reported-by: Daniel Silverstone Fixes #4499 Closes #4514
* url: normalize CURLINFO_EFFECTIVE_URLDaniel Stenberg2019-10-161-1/+1
| | | | | | | | | | | | | | | | The URL extracted with CURLINFO_EFFECTIVE_URL was returned as given as input in most cases, which made it not get a scheme prefixed like before if the URL was given without one, and it didn't remove dotdot sequences etc. Added test case 1907 to verify that this now works as intended and as before 7.62.0. Regression introduced in 7.62.0 Reported-by: Christophe Dervieux Fixes #4491 Closes #4493