summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Curl_checkheaders: make it available for IMAP and SMTP toobagder/non-httpDaniel Stenberg2017-09-085-25/+30
| | | | ... not only HTTP uses this now.
* travis: add build without HTTP/SMTP/IMAPDaniel Stenberg2017-09-081-0/+4
|
* configure: check for C++ compiler after C, to make it non-fatalDaniel Stenberg2017-09-071-1/+1
| | | | | | | | | The tests for object file/executable file extensions are presumably only done for the first of these macros in the configure file. Bug: https://github.com/curl/curl/pull/1851#issuecomment-327597515 Reported-by: Marcel Raad Closes #1873
* form API: add new test 650.Patrick Monnerat2017-09-074-2/+316
| | | | | | Now that the form API is deprecated and not used anymore in curl tool, a lot of its features left untested. Test 650 attempts to check all these features not tested elsewhere.
* configure: fix curl_off_t check's include orderJay Satiro2017-09-071-1/+1
| | | | | | | | | | | - Prepend srcdir include path instead of append. Prior to this change it was possible that during the check for the size of curl_off_t the include path of a user's already installed curl could come before the include path of the to-be-built curl, resulting in the system.h of the former being incorrectly included for that check. Closes https://github.com/curl/curl/pull/1870
* KNOWN_BUGS: Remove CMake symbol hiding issueJakub Zakrzewski2017-09-071-1/+0
| | | | It has already been fixed in 6140dfc
* http-proxy: when not doing CONNECT, that phase is done immediatelyDaniel Stenberg2017-09-071-1/+1
| | | | | | | | | `conn->connect_state` is NULL when doing a regular non-CONNECT request over the proxy and should therefor be considered complete at once. Fixes #1853 Closes #1862 Reported-by: Lawrence Wagerfield
* OpenSSL: fix yet another mistake while encapsulating SSL backend dataJohannes Schindelin2017-09-071-1/+3
| | | | | | | | | | | | Another mistake in my manual fixups of the largely mechanical search-and-replace ("connssl->" -> "BACKEND->"), just like the previous commit concerning HTTPS proxies (and hence not caught during my earlier testing). Fixes #1855 Closes #1871 Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* OpenSSL: fix erroneous SSL backend encapsulationJohannes Schindelin2017-09-071-2/+2
| | | | | | | | | | | | | | | | | | In d65e6cc4f (vtls: prepare the SSL backends for encapsulated private data, 2017-06-21), this developer prepared for a separation of the private data of the SSL backends from the general connection data. This conversion was partially automated (search-and-replace) and partially manual (e.g. proxy_ssl's backend data). Sadly, there was a crucial error in the manual part, where the wrong handle was used: rather than connecting ssl[sockindex]' BIO to the proxy_ssl[sockindex]', we reconnected proxy_ssl[sockindex]. The reason was an incorrect location to paste "BACKEND->"... d'oh. Reported by Jay Satiro in https://github.com/curl/curl/issues/1855. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* vtls: fix memory corruptionJay Satiro2017-09-071-0/+10
| | | | | | | | | | | | Ever since 70f1db321 (vtls: encapsulate SSL backend-specific data, 2017-07-28), the code handling HTTPS proxies was broken because the pointer to the SSL backend data was not swapped between conn->ssl[sockindex] and conn->proxy_ssl[sockindex] as intended, but instead set to NULL (causing segmentation faults). [jes: provided the commit message, tested and verified the patch] Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
* vtls: switch to CURL_SHA256_DIGEST_LENGTH defineDaniel Stenberg2017-09-073-7/+8
| | | | | | | | | ... instead of the prefix-less version since WolfSSL 3.12 now uses an enum with that name that causes build failures for us. Fixes #1865 Closes #1867 Reported-by: Gisle Vanem
* travis: add c-ares enabled builds linux + osxDaniel Stenberg2017-09-071-0/+7
| | | | Closes #1868
* HISTORY: added some recent itemsDaniel Stenberg2017-09-071-0/+18
|
* SSL: fix unused parameter warningsJay Satiro2017-09-064-0/+6
|
* mime: drop internal FILE * support.Patrick Monnerat2017-09-064-137/+74
| | | | | | | | - The part kind MIMEKIND_FILE and associated code are suppressed. - Seek data origin offset not used anymore: suppressed. - MIMEKIND_NAMEDFILE renamed MIMEKIND_FILE; associated fields/functions renamed accordingly. - Curl_getformdata() processes stdin via a callback.
* configure: remove --enable-soname-bump and SONAME_BUMPDaniel Stenberg2017-09-062-47/+0
| | | | | | | | | | | | | | | | | | Back in 2008, (and commit 3f3d6ebe665f3) we changed the logic in how we determine the native type for `curl_off_t`. To really make sure we didn't break ABI without bumping SONAME, we introduced logic that attempted to detect that it would use a different size and thus not be compatible. We also provided a manual switch that allowed users to tell configure to bump SONAME by force. Today, we know of no one who ever got a SONAME bump auto-detected and we don't know of anyone who's using the manual bump feature. The auto- detection is also no longer working since we introduced defining curl_off_t in system.h (7.55.0). Finally, this bumping logic is not present in the cmake build. Closes #1861
* vtls: select ssl backend case-insensitive (follow-up)Gisle Vanem2017-09-062-7/+10
| | | | | | | | | | | | | - Do a case-insensitive comparison of CURL_SSL_BACKEND env as well. - Change Curl_strcasecompare calls to strcasecompare (maps to the former but shorter). Follow-up to c290b8f. Bug: https://github.com/curl/curl/commit/c290b8f#commitcomment-24094313 Co-authored-by: Jay Satiro
* openssl: Integrate Peter Wu's SSLKEYLOGFILE implementationJay Satiro2017-09-052-0/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an adaptation of 2 of Peter Wu's SSLKEYLOGFILE implementations. The first one, written for old OpenSSL versions: https://git.lekensteyn.nl/peter/wireshark-notes/tree/src/sslkeylog.c The second one, written for BoringSSL and new OpenSSL versions: https://github.com/curl/curl/pull/1346 Note the first one is GPL licensed but the author gave permission to waive that license for libcurl. As of right now this feature is disabled by default, and does not have a configure option to enable it. To enable this feature define ENABLE_SSLKEYLOGFILE when building libcurl and set environment variable SSLKEYLOGFILE to a pathname that will receive the keys. And in Wireshark change your preferences to point to that key file: Edit > Preferences > Protocols > SSL > Master-Secret Co-authored-by: Peter Wu Ref: https://github.com/curl/curl/pull/1030 Ref: https://github.com/curl/curl/pull/1346 Closes https://github.com/curl/curl/pull/1866
* mime: fix a trivial warning.Patrick Monnerat2017-09-051-1/+0
|
* mime: replace 'struct Curl_mimepart' by 'curl_mimepart' in encoder code.Patrick Monnerat2017-09-052-23/+22
| | | | mime_state is now a typedef.
* mime: implement encoders.Patrick Monnerat2017-09-0512-45/+809
| | | | | | | | curl_mime_encoder() is operational and documented. curl tool -F option is extended with ";encoder=". curl tool --libcurl option generates calls to curl_mime_encoder(). New encoder tests 648 & 649. Test 1404 extended with an encoder specification.
* runtests.pl: support attribute "nonewline" in part verify/upload.Patrick Monnerat2017-09-051-0/+7
|
* fixup data/test1135Daniel Stenberg2017-09-051-1/+1
|
* mime: unified to use the typedef'd mime structs everywhereDaniel Stenberg2017-09-057-96/+96
| | | | ... and slightly edited to follow our code style better.
* curl.h: use lower case curl_mime* as for all public symbolsDaniel Stenberg2017-09-051-3/+3
|
* docs/curl_mime_*.3: use correct variable types in examplesDaniel Stenberg2017-09-057-14/+14
|
* openssl: use OpenSSL's default ciphers by defaultKamil Dudka2017-09-051-4/+14
| | | | | | | | Up2date versions of OpenSSL maintain the default reasonably secure without breaking compatibility, so it is better not to override the default by curl. Suggested at https://bugzilla.redhat.com/1483972 Closes #1846
* examples/mime: minor example code fixesViktor Szakats2017-09-056-11/+11
|
* docs/curl_mime_*.3: added examplesDaniel Stenberg2017-09-059-2/+128
|
* configure: add MultiSSL to FEATURES when enabledDaniel Stenberg2017-09-051-0/+6
| | | | ...for curl-config and its corresponding test 1014
* http-proxy: treat all 2xx as CONNECT successDaniel Stenberg2017-09-053-4/+84
| | | | | | | | Added test 1904 to verify. Reported-by: Lawrence Wagerfield Fixes #1859 Closes #1860
* MAIL-ETIQUETTE: added "1.9 Your emails are public"Daniel Stenberg2017-09-051-5/+26
|
* curl.h: fix "unused checksrc ignore", remove dangling referenceDaniel Stenberg2017-09-041-4/+1
| | | | ... to a README file that doesn't exist anymore
* docs: Update to secure URL versionsViktor Szakats2017-09-043-4/+4
|
* mime: use CURL_ZERO_TERMINATED in examplesViktor Szakats2017-09-046-19/+19
| | | | and some minor whitespace fixes
* schannel: return CURLE_SSL_CACERT on failed verificationDaniel Stenberg2017-09-041-1/+1
| | | | | | | ... not *CACERT_BADFILE as it isn't really because of a bad file. Bug: https://curl.haxx.se/mail/lib-2017-09/0002.html Closes #1858
* test1135: fixed after bd8070085f9Daniel Stenberg2017-09-041-2/+2
|
* examples/post-callback: stop returning one byte at a timeDaniel Stenberg2017-09-041-23/+32
| | | | | | | | ... since people copy and paste code from this example and thus they get an inefficient POST operation without a good reason and sometimes without understanding why. Instead this now returns as much data as possible.
* RELEASE-NOTES: fixed the function counter scriptDaniel Stenberg2017-09-041-1/+1
|
* curl.h: make the curl_strequal() protos use the same styleDaniel Stenberg2017-09-041-2/+2
| | | | ... as the other functions. Makes it easier to machine-parse!
* docs: curl_mime_*.3 man page formatting editsDaniel Stenberg2017-09-0412-67/+72
|
* RELEASE-NOTES: synced with 1ab9e9b50Daniel Stenberg2017-09-041-10/+18
|
* lib: bump version info (soname). Adapt and reenable test 1135.Patrick Monnerat2017-09-043-6/+15
|
* headers: move the global_sslset() proto from multi.h to curl.hDaniel Stenberg2017-09-032-61/+61
| | | | | | As it was added to multi.h simply to not break test 1135, which now has been disabled due to the mime API addition anyway and su we can now move the sslset stuff to where the other curl_global_* prototypes are.
* mime: fix signed/unsigned conversions.Patrick Monnerat2017-09-033-16/+25
| | | | Use and generate CURL_ZERO_TERMINATED in curl tool and tests.
* tool_formparse: fix some trivial warningsJay Satiro2017-09-031-4/+2
|
* mime: use size_t instead of ssize_t in public API interface.Patrick Monnerat2017-09-036-53/+61
| | | | | | | | | To support telling a string is nul-terminated, symbol CURL_ZERO_TERMINATED has been introduced. Documentation updated accordingly. symbols in versions updated. Added form API symbols deprecation info.
* mime: remove support "-" stdin pseudo-file name in curl_mime_filedata().Patrick Monnerat2017-09-037-14/+48
| | | | | | | | | | | | | | | This feature is badly supported in Windows: as a replacement, a caller has to use curl_mime_data_cb() with fread, fseek and possibly fclose callbacks to process opened files. The cli tool and documentation are updated accordingly. The feature is however kept internally for form API compatibility, with the known caveats it always had. As a side effect, stdin size is not determined by the cli tool even if possible and this results in a chunked transfer encoding. Test 173 is updated accordingly.
* mime: fix some implicit curl_off_t --> size_t conversion warnings.Patrick Monnerat2017-09-032-6/+10
|
* mime: tests and examples.Patrick Monnerat2017-09-0231-116/+1179
| | | | | | | | | | Additional mime-specific tests. Existing tests updated to reflect small differences (Expect: 100-continue, data size change due to empty lines, etc). Option -F headers= keyword added to tests. test1135 disabled until the entry point order change is resolved. New example smtp-mime. Examples postit2 and multi-post converted from form API to mime API.