Yang Tse [Thu, 3 Nov 2011 22:21:01 +0000 (23:21 +0100)]
tool_cfgable.c: pending check done
Yang Tse [Thu, 3 Nov 2011 20:56:51 +0000 (21:56 +0100)]
url.c and file.c: fix OOM triggered segfault
Daniel Stenberg [Thu, 3 Nov 2011 08:54:12 +0000 (09:54 +0100)]
rename ftp_ssl: the struct field is used for many protocols
Now called 'use_ssl' instead, which better matches the current CURLOPT
name and since the option is used for all pingpong protocols (at least)
it makes sense to not use 'ftp' in the name.
Daniel Stenberg [Wed, 2 Nov 2011 21:44:22 +0000 (22:44 +0100)]
gtls_connect_step1: remove use of deprecated functions
Use gnutls_priority_set_direct() instead of gnutls_protocol_set_priority().
Remove the gnutls_certificate_type_set_priority() use since x509 is the
default certificate type anyway.
Reported by: Vincent Torri
Yang Tse [Wed, 2 Nov 2011 21:34:41 +0000 (22:34 +0100)]
url.c and transfer.c: nullify connection pointer when free()'ed
Yang Tse [Wed, 2 Nov 2011 12:38:31 +0000 (13:38 +0100)]
FTP test server: NODATACONN commands follow-up
Make NODATACONN425 and NODATACONN421 return a 150 positive preliminary reply
before 425 or 421.
New NODATACONN150 returns 150 without further positive nor negative reply
Now NODATACONN doesn't reply anything at all.
Yang Tse [Tue, 1 Nov 2011 13:38:21 +0000 (14:38 +0100)]
multi.c: OOM handling fix
Yang Tse [Tue, 1 Nov 2011 13:11:36 +0000 (14:11 +0100)]
FTP test server: NODATACONN commands follow-up
Make NODATACONN custom commands apply to both active and passive FTP,
and ensure 425 and 421 are not returned unless data channel usage is
attempted.
Yang Tse [Tue, 1 Nov 2011 11:53:23 +0000 (12:53 +0100)]
tool_cb_see.h: fix compiler warning
Yang Tse [Mon, 31 Oct 2011 21:42:43 +0000 (22:42 +0100)]
setup.h: fix compiler warning
Yang Tse [Mon, 31 Oct 2011 06:29:13 +0000 (07:29 +0100)]
FTP test server: NODATACONN commands commit
c761fcb0 follow-up
Adjustments that make NODATACONN custom commands fully usable.
Dave Reisner [Sun, 30 Oct 2011 03:28:11 +0000 (04:28 +0100)]
doc/curl.1: fix sentence with ending for -# option
Try to be a little more descriptive about the effect of this flag,
rather than parroting what was said in the paragraph just above.
Yang Tse [Sun, 30 Oct 2011 16:12:20 +0000 (17:12 +0100)]
FTP test server: fix server unresponsiveness
Some torture tests left FTP test server in an unresponsive state, resulting
in torture tests that actually completed following unexpected code paths.
Changes in this commit solely address this issue and some adjustments for
ftpserver.pl logging relative to data channel establishment and tear down.
Pending NODATACONN relative adjustments reserved for a further commit.
Yang Tse [Sun, 30 Oct 2011 15:45:14 +0000 (16:45 +0100)]
runtests.pl: running server checks - commit
4464583a follow-up
Ensure verification takes place with no server commands file.
Ignore verbose setting for running server precheck.
Tweak unresponsive server message, to allow detection by haxx.se scripts.
Yang Tse [Sat, 29 Oct 2011 12:58:50 +0000 (14:58 +0200)]
gtls.c: gnutls_transport_set_global_errno() deprecated in version 2.12.3
Yang Tse [Fri, 28 Oct 2011 13:59:36 +0000 (15:59 +0200)]
runtests.pl: running server checks - commit
3676ec96 follow-up
Fix called sub when checking TFTP server, and adjust message.
Yang Tse [Thu, 27 Oct 2011 22:05:16 +0000 (00:05 +0200)]
runtests.pl: running server checks - commit
4464583a follow-up
Extended server checks to others in addition to pingpong when torture testing.
Yang Tse [Thu, 27 Oct 2011 20:00:23 +0000 (22:00 +0200)]
lib589.c: add CURLOPT_READDATA missing stuff
Yang Tse [Thu, 27 Oct 2011 19:46:24 +0000 (21:46 +0200)]
ftpserver.pl: three new custom FTP server commands to disable data channel
NODATACONN421: applies only to active FTP mode, instructs server to not
establish data connection back to client and reply with FTP 421.
NODATACONN425: applies only to active FTP mode, instructs server to not
establish data connection back to client and reply with FTP 425.
NODATACONN: applies to both active and passive FTP modes, instructs server
to not establish nor accept a data channel and fool client into believing
that the data channel connection is possible.
Some polishing probably required.
Yang Tse [Thu, 27 Oct 2011 15:08:02 +0000 (17:08 +0200)]
multi.c: OOM handling fix
Fix curl_multi_cleanup() segfault when using weird cleanup sequence.
Daniel Stenberg [Thu, 27 Oct 2011 10:46:29 +0000 (12:46 +0200)]
multi: start ftp state machine when switching to DO_MORE
This extends the fix from commit
d7934b8bd491
When the multi state is changed within the multi_runsingle from DOING to
DO_MORE, we didn't immediately start the FTP state machine again. That
then left the FTP state in FTP_STOP. When curl_multi_fdset() was
subsequently called, the ftp_domore_getsock() function would return the
wrong fd info.
Reported by: Gokhan Sengun
Daniel Stenberg [Thu, 27 Oct 2011 07:22:15 +0000 (09:22 +0200)]
libcurl-multi.3: update the list of areas still blocking
Yang Tse [Wed, 26 Oct 2011 16:55:35 +0000 (18:55 +0200)]
test 589: active FTP upload using multi timeout and EPRT disabled server
Yang Tse [Wed, 26 Oct 2011 16:46:32 +0000 (18:46 +0200)]
multi tests: OOM handling fixes - commit
629d2e34 follow-up
Patrick Monnerat [Wed, 26 Oct 2011 12:48:20 +0000 (14:48 +0200)]
- Prepare the ILE/RPG binding and OS400 documentation for the upcoming release
Daniel Stenberg [Tue, 25 Oct 2011 21:28:30 +0000 (23:28 +0200)]
RELEASE-NOTES: synced with
4464583a6ed
5 more bug fixes, 4 additional contributors
Yang Tse [Tue, 25 Oct 2011 21:19:36 +0000 (23:19 +0200)]
runtests.pl: running server checks
When running torture tests, verify before each test case that required
pingpong servers which are supposed to be alive are actually responsive.
If found not responsive then restart them.
Daniel Stenberg [Mon, 24 Oct 2011 21:09:59 +0000 (23:09 +0200)]
dist: add test 587
I created test 587 in commit
840eff44f2b but forgot to add the file to
the tarball. Added now.
Daniel Stenberg [Mon, 24 Oct 2011 21:08:16 +0000 (23:08 +0200)]
test 588: verify active FTP with multi interface without EPRT
This is using the verbatim 525 test code but it disables EPRT in the
server and this should work just as well anyway.
Daniel Stenberg [Mon, 24 Oct 2011 20:54:53 +0000 (22:54 +0200)]
FTP server: allow EPRT by default
EPRT is now supported by default by the server. To disable it, use the
generic REPLY instruction in the <servercmd> tag. Test 116 now has it
disabled. All other existing active FTP port tests strip out the port
commands from the logs already so the change of the server isn't that
noticable.
Yang Tse [Mon, 24 Oct 2011 18:42:01 +0000 (20:42 +0200)]
ftp.c: some OOM handling fixes
Yang Tse [Mon, 24 Oct 2011 18:40:25 +0000 (20:40 +0200)]
ftpserver.pl: ensure integral number usage for passive mode string
Daniel Stenberg [Mon, 24 Oct 2011 15:28:41 +0000 (17:28 +0200)]
large headers: have curl accept >16K headers
As commit
5850cc4808ab clarifies, libcurl can deliver header lines that
are longer than CURL_MAX_WRITE_SIZE, only body data is limited to that
size. The curl tool has check (when built debug-enabled) that made the
wrong checks and this new test 1205 verifies that larger headers work.
Daniel Stenberg [Mon, 24 Oct 2011 14:43:53 +0000 (16:43 +0200)]
curl_easy_setopt.3: headers can be CURL_MAX_HTTP_HEADER bytes
Mention this maximum header size for the header callback cases
Daniel Stenberg [Mon, 24 Oct 2011 11:11:43 +0000 (04:11 -0700)]
Merge pull request #25 from trtom/master
make sure the static build uses the static build option!
Daniel Stenberg [Sun, 23 Oct 2011 22:13:47 +0000 (00:13 +0200)]
curl_easy_setopt.3: fix typo
shoot, Dan Fandrich already had this pointed out...
Steve Holme [Fri, 21 Oct 2011 21:59:50 +0000 (22:59 +0100)]
curl_easy_setopt: Added pop3 to CURLOPT_URL.
Added pop3 username and password example as well as an explanation of
how path part of the URL is used under pop3.
Additionally have corrected a couple of typos.
Yang Tse [Sat, 22 Oct 2011 12:46:49 +0000 (14:46 +0200)]
tool_operate.c: OOM handling fix
Move curl_easy_perform source code geneartion out of curl_easy_perform's loop
for proper OOM handling and source code geneartion.
Daniel Stenberg [Fri, 21 Oct 2011 21:36:54 +0000 (23:36 +0200)]
curl_multi_fdset: correct fdset with FTP PORT use
After a PORT has been issued, and the multi handle would switch to the
CURLM_STATE_DO_MORE state (which is unique for FTP), libcurl would
return the wrong fdset to wait for when curl_multi_fdset() is
called. The code would blindly assume that it was waiting for a connect
of the second connection, while that isn't true immediately after the
PORT command.
Also, the function multi.c:domore_getsock() was highly FTP-centric and
therefore ugly to keep in protocol-agnostic code. I solved this problem
by introducing a new function pointer in the Curl_handler struct called
domore_getsock() which is only called during the DOMORE state for
protocols that set that pointer.
The new ftp.c:ftp_domore_getsock() function now returns fdset info about
the control connection's command/response handling while such a state is
in use, and goes over to waiting for a writable second connection first
once the commands are done.
The original problem could be seen by running test 525 and checking the
time stamps in the FTP server log. I can verify that this fix at least
fixes this problem.
Bug: http://curl.haxx.se/mail/lib-2011-10/0250.html
Reported by: Gokhan Sengun
Dan Fandrich [Fri, 21 Oct 2011 20:30:22 +0000 (13:30 -0700)]
Added some missing test case XML tags and keywords
Yang Tse [Fri, 21 Oct 2011 14:40:02 +0000 (16:40 +0200)]
file.c: OOM handling fix
file_disconnect() free's resources for multi API
Yang Tse [Fri, 21 Oct 2011 14:37:13 +0000 (16:37 +0200)]
multi.c: fix segfault
Yang Tse [Fri, 21 Oct 2011 14:34:37 +0000 (16:34 +0200)]
runtests.pl: fix printing of multivalued error codes
Yang Tse [Fri, 21 Oct 2011 14:26:18 +0000 (16:26 +0200)]
multi tests: OOM handling fixes
Additionally, improved error checking and logging.
Dan Fandrich [Fri, 21 Oct 2011 00:54:18 +0000 (17:54 -0700)]
Fixed compilation when HTTP or cookies are disabled
Daniel Stenberg [Thu, 20 Oct 2011 11:11:10 +0000 (13:11 +0200)]
KNOWN_BUGS: #74 fixed
Multiple auths in the same WWW-Authenticate header
Fixed in commit
7d81e3f7193b8c
Daniel Stenberg [Thu, 20 Oct 2011 11:05:09 +0000 (13:05 +0200)]
Curl_http_input_auth: handle multiple auths in WWW-Authenticate
The fix is pretty much the one Nick Zitzmann provided, just edited to do
the right indent levels and with test case 1204 added to verify the fix.
Bug: http://curl.haxx.se/mail/lib-2011-10/0190.html
Reported by: Nick Zitzmann
Daniel Stenberg [Thu, 20 Oct 2011 10:58:26 +0000 (12:58 +0200)]
Curl_smtp_escape_eob: first byte is index 0...
Fix a bug with with commit
2621dd42a4d that happened due to my last
second pre-commit cleanup of the change without proper testing
afterwards!
Daniel Stenberg [Thu, 20 Oct 2011 06:48:15 +0000 (08:48 +0200)]
CURLM_CALL_MULTI_PERFORM: remove mention
This return code has not been used since 7.20.0 so we can stop
mentioning it for current libcurl.
Dan Fandrich [Thu, 20 Oct 2011 04:18:52 +0000 (21:18 -0700)]
Silenced a compiler warning about an unused variable
Tim Harder [Wed, 19 Oct 2011 08:08:56 +0000 (10:08 +0200)]
gtls: only call gnutls_transport_set_lowat with <gnutls-2.12.0
The default lowat level for gnutls-2.12* is set to zero to avoid
unnecessary system calls and the gnutls_transport_set_lowat function has
been totally removed in >=gnutls-3 which causes build failures.
Therefore, the function shouldn't be used except for versions that
require it, <gnutls-2.12.0.
Daniel Stenberg [Wed, 19 Oct 2011 22:13:09 +0000 (00:13 +0200)]
Curl_smtp_escape_eob: fix EOB escaping
As the EOB string can come byte by byte over a series of writes we must
match byte-wise.
Bug: http://curl.haxx.se/mail/lib-2011-10/0172.html
Daniel Stenberg [Tue, 18 Oct 2011 20:34:32 +0000 (22:34 +0200)]
RELEASE-NOTES: synced with
ecbb08cea3cd6
Daniel Stenberg [Mon, 17 Oct 2011 20:01:09 +0000 (22:01 +0200)]
singleipconnect: unstick the ipv6-connection boolean
Previously the bit was set before the connection was found working so if
it would first fail to an ipv6 address and then connect fine to a IPv4
address the variable would still be TRUE.
Reported by: Thomas L. Shinnick
Bug: http://curl.haxx.se/bug/view.cgi?id=3421912
Kamil Dudka [Tue, 6 Sep 2011 16:17:38 +0000 (18:17 +0200)]
nss: avoid a SIGSEGV with immature version of NSS
Bug: https://bugzilla.redhat.com/733685
Kamil Dudka [Fri, 26 Aug 2011 13:43:48 +0000 (15:43 +0200)]
nss: big cleanup in nss_load_cert() and cert_stuff()
Kamil Dudka [Fri, 26 Aug 2011 12:53:26 +0000 (14:53 +0200)]
nss: refactor fmt_nickname() -> dup_nickname()
Do not use artificial nicknames for certificates from files.
Kamil Dudka [Fri, 26 Aug 2011 12:38:18 +0000 (14:38 +0200)]
nss: select client certificates by DER
... instead of nicknames, which are not unique.
Daniel Stenberg [Sun, 16 Oct 2011 22:04:43 +0000 (00:04 +0200)]
--epsv: fix typo
Reported by: Thomas L. Shinnick
Daniel Stenberg [Sun, 16 Oct 2011 21:39:59 +0000 (23:39 +0200)]
--show-error: position indepdenent
Previously we required that -S/--show-error was used _after_
-s/--silent. This was slightly confusing since we strive to make
arguments as position independent as possible.
Now, you can use them in any order and the result should still be the
same.
Bug: http://curl.haxx.se/bug/view.cgi?id=3424286
Reported by: Andreas Olsson
Daniel Stenberg [Sun, 16 Oct 2011 21:38:48 +0000 (23:38 +0200)]
curl_multi_fdset: clarify the max_fd == -1 case
Elaborate what max_fd == -1 means
Remove the reference to CURLM_CALL_MULTI_PERFORM as modern libcurl
versions don't ever return that.
Daniel Stenberg [Sat, 15 Oct 2011 23:07:29 +0000 (01:07 +0200)]
formdata: ack read callback abort
When doing a multipart formpost with a read callback, and that callback
returns CURL_READFUNC_ABORT, that return code must be properly
propagated back and handled accordingly. Previously it would be handled
as a zero byte read which would cause a hang!
Added test case 587 to verify. It uses the lib554.c source code with a
small ifdef.
Reported by: Anton Bychkov
Bug: http://curl.haxx.se/mail/lib-2011-10/0097.html
Daniel Stenberg [Sat, 15 Oct 2011 23:06:48 +0000 (01:06 +0200)]
TODO: have form functions use CURL handle argument
Dave Reisner [Tue, 11 Oct 2011 01:24:40 +0000 (03:24 +0200)]
typecheck: allow NULL to unset CURLOPT_ERRORBUFFER
There might be situations where a user would want to unset this option.
Avoid forcing him/her to cast the NULL argument to (char *) in order to
get past the compile time typecheck.
Daniel Stenberg [Sat, 15 Oct 2011 21:44:28 +0000 (23:44 +0200)]
singleipconnect: don't clobber errno
Save the errno value immediately after a connect() failure so that it
won't get reset to something else before we read it.
Bug: http://curl.haxx.se/mail/lib-2011-10/0066.html
Reported by: Frank Van Uffelen and Fabian Hiernaux
Michal Marek [Thu, 13 Oct 2011 08:51:17 +0000 (10:51 +0200)]
docs: --xattr
Yang Tse [Fri, 14 Oct 2011 16:23:16 +0000 (18:23 +0200)]
file.c: fix compiler warning
Yang Tse [Fri, 14 Oct 2011 15:34:42 +0000 (17:34 +0200)]
url.c: fix endless loop upon transport connection timeout
Jerry Wu detected and provided detailed info about this issue.
Yang Tse [Fri, 14 Oct 2011 15:33:05 +0000 (17:33 +0200)]
sws.c: HTTP and GOPHER test server-side connection closing adjustment
When, for a given test, server is instructed to close connection after
server reply we now wait a very small amount of time (50ms) before doing
so. This is done to allow client to, at least partially, read server
reply before getting an ECONNRESET.
The above is required to make test cases 1070, 1200, 1201 and 1202 pass
with Cygwin 1.5.X on W2K.
GOPHER test server closes connection after _every_ server-reply, as such,
at some point it could require a bigger time or using shutdown() before
a server-side initiated disconnection.
Yang Tse [Thu, 13 Oct 2011 21:00:24 +0000 (23:00 +0200)]
curl_gethostname.c: fix signed/unsigned comparison and avoid a double copy
both introduced in
42be24af
Yang Tse [Thu, 13 Oct 2011 19:09:17 +0000 (21:09 +0200)]
curl_ntlm_msgs.c: fix variable shadowing declaration introduced in
185ed340
Marcin Adamski [Thu, 13 Oct 2011 17:45:36 +0000 (19:45 +0200)]
tftp.c: TFTP timeout and unexpected block adjustments
Set ACK timeout to 5 seconds.
If we are waiting for block X and receive block Y that is the expected one, we
should send ACK and increase X (which is already implemented). Otherwise drop
the packet and don't increase retry counter.
Yang Tse [Thu, 13 Oct 2011 16:04:56 +0000 (18:04 +0200)]
multi.c: OOM handling fixes
Prevent modification of easy handle being added with curl_multi_add_handle()
unless this function actually suceeds.
Run Curl_posttransfer() to allow restoring of SIGPIPE handler when
Curl_connect() fails early in multi_runsingle().
Yang Tse [Wed, 12 Oct 2011 23:52:56 +0000 (01:52 +0200)]
url.c: make line shorter than 80 chars
Yang Tse [Wed, 12 Oct 2011 19:32:10 +0000 (21:32 +0200)]
OOM handling/cleanup slight adjustments
Yang Tse [Tue, 11 Oct 2011 17:41:30 +0000 (19:41 +0200)]
OOM handling/cleanup slight adjustments
Yang Tse [Mon, 10 Oct 2011 10:27:17 +0000 (12:27 +0200)]
lib540.c: OOM handling fixes making test 540 pass torture testing
Dan Fandrich [Sun, 9 Oct 2011 06:12:07 +0000 (23:12 -0700)]
RELEASE-NOTES: Fixed a couple of typos
Yang Tse [Fri, 7 Oct 2011 23:27:03 +0000 (01:27 +0200)]
telnet.c: fix compiler warning
Yang Tse [Fri, 7 Oct 2011 18:50:57 +0000 (20:50 +0200)]
libcurl: some OOM handling fixes
Yang Tse [Thu, 6 Oct 2011 18:30:34 +0000 (20:30 +0200)]
multi.c: OOM handling fixes making torture tests 560 580 581 pass
Yang Tse [Thu, 6 Oct 2011 18:26:42 +0000 (20:26 +0200)]
test harness: non-stunnel https server integration overhaul
Yang Tse [Thu, 6 Oct 2011 15:39:00 +0000 (17:39 +0200)]
curl tool: reviewed code moved to tool_*.[ch] files
Yang Tse [Thu, 6 Oct 2011 10:57:12 +0000 (12:57 +0200)]
buildconf: warn about autoconf 2.67 and 2.68 generating bad/unusable scripts
Yang Tse [Wed, 5 Oct 2011 20:27:29 +0000 (22:27 +0200)]
curl tool: fix compiler warning
Yang Tse [Wed, 5 Oct 2011 20:01:42 +0000 (22:01 +0200)]
curl tool: OOM handling fixes
Yang Tse [Wed, 5 Oct 2011 18:16:16 +0000 (20:16 +0200)]
curl tool: reviewed code moved to tool_*.[ch] files
Yang Tse [Wed, 5 Oct 2011 17:33:46 +0000 (19:33 +0200)]
curl tool: OOM handling fixes
Yang Tse [Wed, 5 Oct 2011 14:41:04 +0000 (16:41 +0200)]
curl tool: OOM handling fixes
Yang Tse [Wed, 5 Oct 2011 13:06:26 +0000 (15:06 +0200)]
curl tool: OOM handling fixes
Yang Tse [Wed, 5 Oct 2011 10:40:30 +0000 (12:40 +0200)]
curl tool: header inclusion adjustment
Yang Tse [Wed, 5 Oct 2011 00:58:18 +0000 (02:58 +0200)]
curl tool: symbol check adjustment
Yang Tse [Tue, 4 Oct 2011 23:19:58 +0000 (01:19 +0200)]
curl tool: header inclusion adjustment
Yang Tse [Tue, 4 Oct 2011 22:03:20 +0000 (00:03 +0200)]
curl tool: code moved to tool_*.[ch] files
Daniel Stenberg [Tue, 4 Oct 2011 14:34:45 +0000 (16:34 +0200)]
curl_share_cleanup: avoid compiler warning
Move the variable declaration to within the #ifdef
Daniel Stenberg [Tue, 4 Oct 2011 14:33:07 +0000 (16:33 +0200)]
struct Curl_share: provide sslsession unconditionally
It makes much nicer and less convuluted code everywhere if this struct
member is always present even when libcurl is built without SSL support.
This reverts parts of commit
15e3e451702396e
Daniel Stenberg [Tue, 4 Oct 2011 14:24:50 +0000 (16:24 +0200)]
ftp: improved the failed PORT host name resolved error message
Daniel Stenberg [Mon, 3 Oct 2011 21:04:32 +0000 (23:04 +0200)]
codepolicing
Daniel Stenberg [Mon, 3 Oct 2011 21:03:59 +0000 (23:03 +0200)]
sspi build fix
define away Curl_ntlm_sspi_cleanup() when no windows SSPI build
Steve Holme [Sat, 1 Oct 2011 13:46:14 +0000 (14:46 +0100)]
smtp: Added support for NTLM authentication
Modified smtp_endofresp() to detect NTLM from the server specified list
of supported authentication mechanisms.
Modified smtp_authenticate() to start the sending of the NTLM data.
Added smtp_auth_ntlm_type1_message() which creates a NTLM type-1
message. This function is used by authenticate() to start the sending
of data and by smtp_state_auth_ntlm_resp() when the AUTH command
doesn't contain the type-1 message as part of the initial response.
This lack of initial response can happen if an OOM error occurs or the
type-1 message is longer than 504 characters. As the main AUTH command
is limited to 512 character the data has to be transmitted in two
parts; one containing the AUTH NTLM and the second containing the
type-1 message.
Added smtp_state_auth_ntlm_type2msg_resp() which handles the incoming
type-2 message and sends an outgoing type-3 message. This type-2
message is sent by the server in response to our type-1 message.
Modified smtp_state_auth_resp() to handle the response to: the AUTH
NTLM without the initial response and the type-2 response.
Modified smtp_disconnect() to cleanup the NTLM SSPI stack.