Daniel Stenberg [Sat, 21 Dec 2013 23:17:58 +0000 (00:17 +0100)]
Curl_pp_readresp: zero terminate line
The comment in the code mentions the zero terminating after having
copied data, but it mistakingly zero terminated the source data and not
the destination! This caused the test 864 problem discussed on the list:
http://curl.haxx.se/mail/lib-2013-12/0113.html
Signed-off-by: Daniel Stenberg <daniel@haxx.se>
Steve Holme [Sat, 21 Dec 2013 12:50:30 +0000 (12:50 +0000)]
Revert "pop3: Added debug information to assist with test864 failure"
This reverts commit
727d798d680f29c8b3cb7d7f03d6b6a3eb4356da.
Steve Holme [Sat, 21 Dec 2013 11:15:00 +0000 (11:15 +0000)]
pop3: Added debug information to assist with test864 failure
Steve Holme [Fri, 20 Dec 2013 20:27:21 +0000 (20:27 +0000)]
RELEASE-NOTES: Synced with
812c5ace759d04
Steve Holme [Fri, 20 Dec 2013 20:17:59 +0000 (20:17 +0000)]
pop3: Fixed APOP timestamp detection from commit
1cfb436a2f1795
Daniel Stenberg [Wed, 18 Dec 2013 13:27:31 +0000 (14:27 +0100)]
Makefile.inc: use standard source header
Daniel Stenberg [Wed, 18 Dec 2013 13:25:43 +0000 (14:25 +0100)]
Makefile.inc: specify the vtls sources+headers separately
Daniel Stenberg [Tue, 17 Dec 2013 22:32:47 +0000 (23:32 +0100)]
vtls: renamed sslgen.[ch] to vtls.[ch]
Daniel Stenberg [Tue, 17 Dec 2013 22:26:35 +0000 (23:26 +0100)]
openssl: renamed backend files to openssl.[ch]
Daniel Stenberg [Tue, 17 Dec 2013 22:16:34 +0000 (23:16 +0100)]
vtls: moved all TLS/SSL source and header files into subdir
Daniel Stenberg [Tue, 17 Dec 2013 22:05:37 +0000 (23:05 +0100)]
vtls: created subdir, moved sslgen.[ch] there, updated all include lines
Steve Holme [Fri, 20 Dec 2013 12:46:18 +0000 (12:46 +0000)]
pop3: Fixed selection of APOP when server replies with an invalid timestamp
Although highlighted by a bug in commit
1cfb436a2f1795, APOP
authentication could be chosen if the server was to reply with an empty
or missing timestamp in the server greeting and APOP was given in the
capability list by the server.
Steve Holme [Fri, 20 Dec 2013 07:17:17 +0000 (07:17 +0000)]
pop3: Fixed processing of more than one response when sent in same packet
Added a loop to pop3_statemach_act() in which Curl_pp_readresp() is
called until the cache is drained. Without this multiple responses
received in a single packet could result in a hang or delay.
Steve Holme [Fri, 20 Dec 2013 07:12:12 +0000 (07:12 +0000)]
pop3: Moved CAPA response handling to pop3_state_capa_resp()
Similar to the processing of untagged CAPABILITY responses in IMAP and
multi-line EHLO responses in SMTP, moved the processing of multi-line
CAPA responses to pop3_state_capa_resp().
Steve Holme [Fri, 20 Dec 2013 07:07:07 +0000 (07:07 +0000)]
pop3: Moved APOP detection into pop3_state_servergreet_resp()
In an effort to reduce what pop3_endofresp() does and bring the POP3
source back inline with the IMAP and SMTP protocols, moved the APOP
detection into pop3_state_servergreet_resp().
Steve Holme [Thu, 19 Dec 2013 22:40:56 +0000 (22:40 +0000)]
curl_easy_setopt: Fixed OAuth 2.0 Bearer option name
Bug: http://curl.haxx.se/bug/view.cgi?id=1313
Reported-by: Viktor Szakáts
Daniel Stenberg [Wed, 18 Dec 2013 21:46:38 +0000 (22:46 +0100)]
curl.1: remove URL encoding phrase from --data description
... it could be misleading a reader into thinking it _has_ to be encoded.
Steve Holme [Wed, 18 Dec 2013 20:44:20 +0000 (20:44 +0000)]
imap/pop3/smtp: Added support for SASL authentication downgrades
Added support for downgrading the SASL authentication mechanism when the
decoding of CRAM-MD5, DIGEST-MD5 and NTLM messages fails. This enhances
the previously added support for graceful cancellation by allowing the
client to retry a lesser SASL mechanism such as LOGIN or PLAIN, or even
APOP / clear text (in the case of POP3 and IMAP) when supported by the
server.
Daniel Stenberg [Wed, 18 Dec 2013 13:37:04 +0000 (14:37 +0100)]
RELEASE-PROCEDURE: new document
Daniel Stenberg [Wed, 18 Dec 2013 13:35:56 +0000 (14:35 +0100)]
gitignore: ignore .dirstamp files
Daniel Stenberg [Wed, 18 Dec 2013 12:53:45 +0000 (13:53 +0100)]
smtp: fix compiler warning
smtp.c:478:21: error: unused variable 'smtpc' [-Werror=unused-variable]
Steve Holme [Wed, 18 Dec 2013 12:39:13 +0000 (12:39 +0000)]
smtp: Moved the calculation of SASL login details into a separate function
Steve Holme [Wed, 18 Dec 2013 12:34:56 +0000 (12:34 +0000)]
pop3: Moved the calculation of SASL login details into a separate function
Steve Holme [Wed, 18 Dec 2013 12:29:46 +0000 (12:29 +0000)]
imap: Moved the calculation of SASL login details into a separate function
Steve Holme [Wed, 18 Dec 2013 07:10:22 +0000 (07:10 +0000)]
smtp: Moved the sending of the AUTH command into a separate function
Steve Holme [Wed, 18 Dec 2013 07:05:11 +0000 (07:05 +0000)]
pop3: Moved the sending of the AUTH command into a separate function
Steve Holme [Wed, 18 Dec 2013 07:00:00 +0000 (07:00 +0000)]
imap: Moved the sending of the AUTHENICATE command into a separate function
Steve Holme [Tue, 17 Dec 2013 22:48:09 +0000 (22:48 +0000)]
email: Renamed *_perform_authenticate() functions
In preparation for the upcoming SASL downgrade feature renamed the
imap__perform_authenticate(), pop3__perform_authenticate() and
smtp__perform_authenticate() functions.
Daniel Stenberg [Tue, 17 Dec 2013 15:38:51 +0000 (16:38 +0100)]
bump: start working on the next release
Daniel Stenberg [Mon, 16 Dec 2013 21:46:22 +0000 (22:46 +0100)]
RELEASE-NOTES: synced with
c0ef05e67
... for the pending 7.34.0 release
Upped the contributor count
Daniel Stenberg [Mon, 16 Dec 2013 21:52:41 +0000 (22:52 +0100)]
THANKS: add contributors from 7.34.0 release
24 new great friends
Daniel Stenberg [Fri, 29 Nov 2013 21:46:05 +0000 (22:46 +0100)]
gtls: respect *VERIFYHOST independently of *VERIFYPEER
Security flaw CVE-2013-6422
This is conceptually the same problem and fix that
3c3622b6 brought to the
OpenSSL backend and that resulted in CVE-2013-4545.
This version of the problem was independently introduced to the GnuTLS
backend with commit
59cf93cc, present in the code since the libcurl
7.21.4 release.
Advisory: http://curl.haxx.se/docs/adv_20131217.html
Bug: http://curl.haxx.se/mail/lib-2013-11/0214.html
Reported-by: Marc Deslauriers
Daniel Stenberg [Sun, 15 Dec 2013 22:38:37 +0000 (23:38 +0100)]
curl.1 document -J doesn't %-decode
...also added as KNOWN_BUG #87 with reference to bug #1294
Daniel Stenberg [Mon, 2 Dec 2013 14:33:32 +0000 (15:33 +0100)]
multi: add timer inaccuracy margin to timeout/connecttimeout
Since all systems have inaccuracy in the timeout handling it is
imperative that we add an inaccuracy margin to the general timeout and
connecttimeout handling with the multi interface. This way, when the
timeout fires we should be fairly sure that it has passed the timeout
value and will be suitably detected.
For cases where the timeout fire before the actual timeout, we would
otherwise consume the timeout action and still not run the timeout code
since the condition wasn't met.
Reported-by: He Qin
Bug: http://curl.haxx.se/bug/view.cgi?id=1298
Daniel Stenberg [Sat, 14 Dec 2013 22:22:52 +0000 (23:22 +0100)]
RELEASE-NOTES: synced with
dd4d9ea542
Daniel Stenberg [Sat, 14 Dec 2013 22:09:05 +0000 (23:09 +0100)]
curl_easy_setopt: clarify some USERPWD and PROXYUSERPWD details
Daniel Stenberg [Sat, 14 Dec 2013 21:39:27 +0000 (22:39 +0100)]
login options: remove the ;[options] support from CURLOPT_USERPWD
To avoid the regression when users pass in passwords containing semi-
colons, we now drop the ability to set the login options with the same
options. Support for login options in CURLOPT_USERPWD was added in
7.31.0.
Test case 83 was modified to verify that colons and semi-colons can be
used as part of the password when using -u (CURLOPT_USERPWD).
Bug: http://curl.haxx.se/bug/view.cgi?id=1311
Reported-by: Petr Bahula
Assisted-by: Steve Holme
Signed-off-by: Daniel Stenberg <daniel@haxx.se>
Steve Holme [Sat, 14 Dec 2013 12:23:23 +0000 (12:23 +0000)]
imap: Fixed exclude of clear text when using auth=* in commit
75cd7fd66762bb
It is not 100% clear whether * should include clear text LOGIN or not
from RFC-5092, however, including it is then consistent with current
POP3 behaviour where clear text, APOP or SASL may be chosen.
Steve Holme [Fri, 13 Dec 2013 22:57:13 +0000 (22:57 +0000)]
imap: Fixed incorrect fallback to clear text authentication
If a specific SASL authentication mechanism was requested by the user
as part of the login options but wasn't supported by the server then
curl would fallback to clear text, when it shouldn't, rather than
reporting "No known authentication mechanisms supported" as the POP3
and SMTP protocols do.
Eric Lubin [Wed, 11 Dec 2013 04:01:07 +0000 (20:01 -0800)]
parsedate: avoid integer overflow
In C, signed integer overflow is undefined behavior. Thus, the compiler
is allowed to assume that it will not occur. In the check for an
overflow, the developer assumes that the signed integer of type time_t
will wrap around if it overflows. However, this behavior is undefined in
the C standard. Thus, when the compiler sees this, it simplifies t +
delta < t to delta < 0. Since delta > 0 and delta < 0 can't both be
true, the entire if statement is optimized out under certain
optimization levels. Thus, the parsedate function would return
PARSEDATE_OK with an undefined value in the time, instead of return -1 =
PARSEDATE_FAIL.
Daniel Stenberg [Mon, 9 Dec 2013 07:19:04 +0000 (08:19 +0100)]
parseconfig: warn if unquoted white spaces are detected
Commit
0db811b6 made some existing config files pass on unexpected
values to libcurl that made it somewhat hard to track down what was
really going on.
This code detects unquoted white spaces in the parameter when parsing a
config file as that would be one symptom and it is generally a bad
syntax anyway.
Daniel Stenberg [Mon, 9 Dec 2013 10:56:01 +0000 (11:56 +0100)]
RELEASE-NOTES: recount contributors and libcurl options
Daniel Stenberg [Sat, 7 Dec 2013 21:52:31 +0000 (22:52 +0100)]
RELEASE-NOTES: synced with
c4f46e97ca6c
James Dury [Sat, 7 Dec 2013 14:53:08 +0000 (15:53 +0100)]
TFTP: let tftp_multi_statemach()'s return codes through
It would otherwise always clobber the return code with new function
calls and it couldn't return timeout etc.
Bug: http://curl.haxx.se/bug/view.cgi?id=1310
Melissa Mears [Wed, 4 Dec 2013 00:07:32 +0000 (16:07 -0800)]
darwinssl: Fix #if 10.6.0 for SecKeychainSearch
The comment here says that SecKeychainSearch causes a deprecation
warning when used with a minimum Mac OS X SDK version of 10.7.0, which
is correct. However, the #if guard did not match. It was intended to
only use the code if 10.6.0 support was enabled, but it had 10.7.0
instead. This caused a warning if the minimum was exactly 10.7.0.
Christian Weisgerber [Wed, 4 Dec 2013 15:45:50 +0000 (16:45 +0100)]
curl.h: <sys/select.h> for OpenBSD
curl.h should also include <sys/select.h> on OpenBSD to reliably
pull in select(). Typically, including <sys/time.h> will be enough,
but not if strict standards-compliance is requested (e.g. by defining
_XOPEN_SOURCE).
Daniel Stenberg [Wed, 4 Dec 2013 22:08:17 +0000 (23:08 +0100)]
digest: fix CURLAUTH_DIGEST_IE
The URI that is passed in as part of the Authorization: header needs to
be cut off at '?' if CURLAUTH_DIGEST_IE is set. Previously the code only
did when calculating the MD5sum.
Bug: http://curl.haxx.se/bug/view.cgi?id=1308
Patched-by: Sergey Tatarincev
Daniel Stenberg [Wed, 4 Dec 2013 21:46:49 +0000 (22:46 +0100)]
Curl_is_connected: use proxy name in error message when proxy is used
(bug introduced in
255826c4, never present in a release)
Reported-by: Dima Tisnek
Bug: http://curl.haxx.se/mail/lib-2013-12/0006.html
Steve Holme [Wed, 4 Dec 2013 20:10:33 +0000 (20:10 +0000)]
imap/pop3: Post graceful cancellation consistency changes
Melissa Mears [Tue, 3 Dec 2013 23:56:39 +0000 (15:56 -0800)]
pop3: Fix POP3_TYPE_ANY signed compilation warning
POP3_TYPE_ANY, or ~0, is written to pop3c->preftype in lib/pop3c.c, an
unsigned int variable. The result of ~0 is -1, which caused a warning
due to writing a negative number to an unsigned variable. To fix this,
make the expression ~0U so that its value is considered the unsigned
number UINT_MAX which is what SASL_AUTH_ANY does in curl_sasl.h.
Kamil Dudka [Mon, 2 Dec 2013 16:00:35 +0000 (17:00 +0100)]
tool_metalink: do not use HAVE_NSS_INITCONTEXT
... no longer provided by the configure script
Kamil Dudka [Mon, 2 Dec 2013 15:09:12 +0000 (16:09 +0100)]
nss: make sure that 'sslver' is always initialized
Kamil Dudka [Mon, 2 Dec 2013 13:25:07 +0000 (14:25 +0100)]
nss: unconditionally require NSS_InitContext()
... since we depend on NSS 3.14+ because of SSL_VersionRangeSet() anyway
Kamil Dudka [Mon, 25 Nov 2013 15:25:15 +0000 (16:25 +0100)]
nss: allow to use TLS > 1.0 if built against recent NSS
Bug: http://curl.haxx.se/mail/lib-2013-11/0162.html
Kamil Dudka [Mon, 25 Nov 2013 15:14:55 +0000 (16:14 +0100)]
nss: put SSL version selection into separate fnc
Kamil Dudka [Mon, 25 Nov 2013 15:03:52 +0000 (16:03 +0100)]
nss: use a better API for controlling SSL version
This change introduces a dependency on NSS 3.14+.
Patrick Monnerat [Mon, 2 Dec 2013 13:33:51 +0000 (14:33 +0100)]
OS400: sync wrappers and RPG binding.
Steve Holme [Sun, 1 Dec 2013 20:22:44 +0000 (20:22 +0000)]
multi.c: Fixed compilation warning
warning: declaration of 'pipe' shadows a global declaration
Steve Holme [Sun, 1 Dec 2013 16:50:16 +0000 (16:50 +0000)]
RELEASE-NOTES: Synced with
ad3836448efbb7
Steve Holme [Sun, 1 Dec 2013 16:40:55 +0000 (16:40 +0000)]
base64: Corrected typo from commit
f3ee587775c88a
Steve Holme [Sun, 1 Dec 2013 13:47:11 +0000 (13:47 +0000)]
base64: Post extended extended validation tidy up
Reduced the separate processing of the last quantum to be performed in
the main decoding loop and renamed some variables for consistency.
Steve Holme [Sun, 1 Dec 2013 11:05:11 +0000 (11:05 +0000)]
base64: Extended validation to look for invalid characters
Extended the basic validation in commit
e17c1b25bc33eb to return a
failure when invalid base64 characters are included.
Steve Holme [Sat, 30 Nov 2013 19:09:09 +0000 (19:09 +0000)]
base64: Post basic validation tidy up
Due to the length checks introduced in commit
e17c1b25bc33eb there is no
need to allow for extra space in the output buffer for a non-padded last
quantum.
Steve Holme [Sat, 30 Nov 2013 10:59:01 +0000 (10:59 +0000)]
curl_easy_getinfo: Post CURLINFO_TLS_SESSION tidy up
1) Renamed curl_tlsinfo to curl_tlssessioninfo as discussed on the
mailing list.
2) Renamed curl_ssl_backend to curl_sslbackend so it doesn't follow our
function naming convention.
3) Updated sessioninfo.c example accordingly.
Daniel Stenberg [Wed, 6 Nov 2013 22:57:44 +0000 (23:57 +0100)]
parseconfig: dash options can't specified with colon or equals
Bug: http://curl.haxx.se/bug/view.cgi?id=1297
Reported-by: Michael Osipov
Daniel Stenberg [Fri, 29 Nov 2013 14:10:27 +0000 (15:10 +0100)]
curl.1: -G also takes --data-urlencode data
Daniel Stenberg [Thu, 28 Nov 2013 22:31:31 +0000 (23:31 +0100)]
globbing: curl glob counter mismatch with {} list use
The "fixed string" function wrongly bumped the "urlnum" counter which
made curl output the total number of URLs wrong when using
{one,two,three} lists in globs.
Reported-by: Michael-O
Bug: http://curl.haxx.se/bug/view.cgi?id=1305
Christian Grothoff [Wed, 27 Nov 2013 22:37:09 +0000 (23:37 +0100)]
sessioninfo.c: Added sample code for CURLINFO_TLS_SESSION
Added a simple example to show how one can use CURLINFO_TLS_SESSION for
obtaining extensive TLS certificate information.
Steve Holme [Wed, 27 Nov 2013 22:44:09 +0000 (22:44 +0000)]
multi.c: Fixed compilation error introduced in commit
a900d45489fc14
Systems that define SIGPIPE_VARIABLE as a noop would not compile as
restore_pipe was defined afterwards.
Christian Grothoff [Wed, 27 Nov 2013 22:28:26 +0000 (23:28 +0100)]
curl_easy_getopt: Handle API violation gracefully
This fixes a NULL dereference in the case where the client asks for
CURLINFO_TLS_SESSION data after the (TLS) session has already been
destroyed (i.e. curl_easy_perform has already completed for this
handle). Instead of crashing, we now return a CURLSSLBACKEND_NONE
error.
Steve Holme [Wed, 27 Nov 2013 22:33:22 +0000 (22:33 +0000)]
KNOWN_BUGS: #86: Disconnect commands may not be sent by IMAP, POP3 and SMTP
Jeff King [Mon, 25 Nov 2013 14:43:21 +0000 (15:43 +0100)]
curl_multi_cleanup: ignore SIGPIPE
This is an extension to the fix in
7d80ed64e43515. We may
call Curl_disconnect() while cleaning up the multi handle,
which could lead to openssl sending packets, which could get
a SIGPIPE.
Signed-off-by: Jeff King <peff@peff.net>
Jeff King [Mon, 25 Nov 2013 14:35:37 +0000 (15:35 +0100)]
sigpipe: factor out sigpipe_reset from easy.c
Commit
7d80ed64e43515 introduced some helpers to handle
sigpipe in easy.c. However, that fix was incomplete, and we
need to add more callers in other files. The first step is
making the helpers globally accessible.
Since the functions are small and should generally end up
inlined anyway, we simply define them in the header as
static functions.
Signed-off-by: Jeff King <peff@peff.net>
Björn Stenberg [Mon, 25 Nov 2013 23:04:28 +0000 (00:04 +0100)]
connect: Try next ip directly after immediate connect fail
This fixes a rare Happy Eyeballs bug where if the first IP family runs
out of addresses before the second-family-timer fires, and the second
IP family's first connect fails immediately, no further IPs of the
second family are attempted.
Daniel Stenberg [Sun, 24 Nov 2013 22:42:54 +0000 (23:42 +0100)]
hostip: don't prune DNS cache entries that are in use
When adding entries to the DNS cache with CURLOPT_RESOLVE, they are
marked 'inuse' forever to prevent them from ever being removed in normal
operations. Still, the code that pruned out-of-date DNS entries didn't
care for the 'inuse' struct field and pruned it anyway!
Reported-by: Romulo A. Ceccon
Bug: http://curl.haxx.se/bug/view.cgi?id=1303
Steve Holme [Sun, 24 Nov 2013 18:00:18 +0000 (18:00 +0000)]
RELEASE-NOTES: Synced with
35e476a3f6cdd5
Steve Holme [Sun, 24 Nov 2013 17:55:15 +0000 (17:55 +0000)]
tests: Re-ordered test arguments to match other IMAP tests
Steve Holme [Sun, 24 Nov 2013 16:19:12 +0000 (16:19 +0000)]
tests: Corrected login "username" authentication responses
Steve Holme [Sun, 24 Nov 2013 12:33:21 +0000 (12:33 +0000)]
tests: Added error code explanation comments
Steve Holme [Sun, 24 Nov 2013 10:59:59 +0000 (10:59 +0000)]
tests: Removed expected QUIT response from graceful cancellation tests
A failure during authentication, which is performed as part of the
CONNECT phrase (for IMAP, POP3 and SMTP) is considered by the multi-
interface as being closed prematurely (aka a dead connection). As such
these protocols cannot issue the relevant QUIT or LOGOUT command.
Temporarily fixed the test cases until we can fix this properly.
Steve Holme [Sat, 23 Nov 2013 15:06:31 +0000 (15:06 +0000)]
tests: Added SMTP graceful authentication cancellation tests
Steve Holme [Sat, 23 Nov 2013 14:46:32 +0000 (14:46 +0000)]
tests: Added POP3 graceful authentication cancellation tests
Steve Holme [Sat, 23 Nov 2013 22:14:34 +0000 (22:14 +0000)]
ftpserver.pl: Reworked fix from commit
7a36b2abc06862
Steve Holme [Sat, 23 Nov 2013 19:19:12 +0000 (19:19 +0000)]
ftpserver.pl: Fixed unknown IMAP command "*"
Steve Holme [Sat, 23 Nov 2013 16:25:37 +0000 (16:25 +0000)]
ftpserver.pl: Fixed servercmd REPLY with * detection
Steve Holme [Sat, 23 Nov 2013 14:26:33 +0000 (14:26 +0000)]
tests: Added IMAP graceful authentication cancellation tests
Steve Holme [Sat, 23 Nov 2013 14:06:10 +0000 (14:06 +0000)]
tests: Moved CR LF in URL tests to their respective protocol groups
Steve Holme [Sat, 23 Nov 2013 09:35:35 +0000 (09:35 +0000)]
smtp: Post SMTP command expansion tidy up
Removed unnecessary SMTP_STOP state changes on failure.
Removed hard return on failure in smtp_state_data_resp().
Steve Holme [Fri, 22 Nov 2013 12:59:35 +0000 (12:59 +0000)]
symbols-in-versions: Added missing CURLSSLBACKEND_* symbols
Steve Holme [Fri, 22 Nov 2013 07:30:00 +0000 (07:30 +0000)]
symbols-in-versions: Fixed missing CURLINFO_TLS_SESSION
Christian Grothoff [Sun, 17 Nov 2013 19:49:16 +0000 (20:49 +0100)]
curl_easy_getinfo: Added CURLINFO_TLS_SESSION for accessing TLS internals
Added new API for returning a SSL backend type and pointer, in order to
allow access to the TLS internals, that may then be used to obtain X509
certificate information for example.
Steve Holme [Sun, 17 Nov 2013 16:55:56 +0000 (16:55 +0000)]
RELEASE-NOTES: Synced with
8191800a0c8ff7
Steve Holme [Sun, 17 Nov 2013 16:39:02 +0000 (16:39 +0000)]
smtp: Fixed space being sent in non --mail-rcpt based requests
Commands such as NOOP, RSET and HELP would be sent with a space at the
end of the command, for example: "NOOP ".
Steve Holme [Sun, 17 Nov 2013 10:13:05 +0000 (10:13 +0000)]
tests: Added SMTP NOOP and RSET tests
Steve Holme [Sun, 17 Nov 2013 12:37:59 +0000 (12:37 +0000)]
test928: Corrected typo in expected data from commit
df58084695ce9b
Steve Holme [Sun, 17 Nov 2013 10:03:25 +0000 (10:03 +0000)]
tests: Added SMTP HELP test
Steve Holme [Sun, 17 Nov 2013 09:45:08 +0000 (09:45 +0000)]
smtp: Changed the default command to HELP when no options are specified
Otherwise a NOOP operation would be performed which a) only returns a
single line response and not a multiline response where -I needs to be
used, and b) provides an inconsistent user experience compared to that
of the POP3 and IMAP protocols.
Steve Holme [Sun, 17 Nov 2013 09:00:21 +0000 (09:00 +0000)]
smtp:Fixed memory leak from commit
dac01ff6d788b2
The buffer allocated by smtp_parse_custom_request() was not freed.
Steve Holme [Sat, 16 Nov 2013 22:56:11 +0000 (22:56 +0000)]
connect: Close open but unconnected socket in singleipconnect()
singleipconnect() could return the file descriptor of an open socket
even though the function returned a CURLE_COULDNT_CONNECT error code
from commit
ed1662c374361a and
02fbc26d59c591.
This could cause tests 19, 704 and 1233 to fail on FreeBSD, AIX and
Solaris.
Steve Holme [Sat, 16 Nov 2013 12:10:15 +0000 (12:10 +0000)]
tests: Added SMTP EXPN command test