1
0
mirror of https://github.com/moparisthebest/curl synced 2024-11-13 21:15:08 -05:00
Commit Graph

1819 Commits

Author SHA1 Message Date
Yang Tse
0c367fef94 ConnectTimeout requires OpenSSH 3.7 or later 2007-11-27 20:57:22 +00:00
Yang Tse
a418d290f1 Explicitly disallow remote hosts to connect to local forwarded ports,
the socks server port in the test suite. This is the default setting
unless a tinkered built ssh is being used.
2007-11-27 00:52:30 +00:00
Yang Tse
08cb30801c Stop ssh and socks servers when verification fails 2007-11-26 14:26:40 +00:00
Yang Tse
788de4f7ba Providing an explicit bind address besides the port for dynamic application-level
port forwarding, our socks port, prevents ssh from running on some systems.

By default, ssh binds local port forwardings to the loopback address, since this
was the address being given as the explicit bind address, now it isn't given.
2007-11-26 14:07:09 +00:00
Daniel Stenberg
05221e9056 test1015 --data-urlencode 2007-11-26 11:04:21 +00:00
Yang Tse
d59841618d Temporary change to better debug startup failures
of test suite ssh and socks servers.
2007-11-26 02:45:24 +00:00
Yang Tse
8d3964782a Allow different start timeout specification for each server 2007-11-25 03:55:53 +00:00
Yang Tse
5b809a3104 make 'checkdied' in runtests.pl more robust 2007-11-23 12:18:45 +00:00
Yang Tse
3daa54d636 Revert last change since it breaks running the test suite
when builddir is different from srcdir.
2007-11-23 09:50:44 +00:00
Yang Tse
8f1829d1d2 Improve chance of running runtests.pl from outside the
source tree 'tests' directory
2007-11-23 04:03:46 +00:00
Yang Tse
6efb6addf2 Debugging messages to trace startnew failures 2007-11-22 19:56:38 +00:00
Yang Tse
61e2e86aef Temporary change adding additional debugging messages to better pinpoint
startup failures of test suite ssh and socks servers.
2007-11-21 19:33:09 +00:00
Yang Tse
9b86eecb94 Fix trying to return outside of a subroutine 2007-11-21 17:50:30 +00:00
Yang Tse
6dfb5b4e1f Don't gather additional debug info unless sshd actually fails 2007-11-20 16:47:56 +00:00
Yang Tse
258c4686b2 Improve detection of sshd un/supported options.
Gather additional debug info when the test suite ssh server fails to start.
2007-11-20 14:10:09 +00:00
Yang Tse
5376d1047c This is a temporary change to test if OpenSSH 3.6 and SunSSH 1.1
are good/compatible enough to run the test suite ssh server and
socks tests
2007-11-19 17:20:32 +00:00
Yang Tse
968e943eac Temporary change to help debugging string(s) returned by sshd -V
when sshd is not being identified as an OpenSSH daemon
2007-11-19 01:49:28 +00:00
Yang Tse
536f98a766 Add /opt/ssh/sbin and /opt/ssh/libexec to the sshd locations search list.
Improve wording of a couple of debug messages.
2007-11-18 01:16:44 +00:00
Yang Tse
c4e5613a7d When unable to start test suite sshserver, log if OpenSSH has not been
found or the OpenSSH version found
2007-11-17 17:43:33 +00:00
Yang Tse
2b15823dab Add /usr/local/sbin and /usr/freeware/bin to the sshd locations search list 2007-11-17 02:28:54 +00:00
Daniel Stenberg
59dcc7e191 Michal Marek made the test suite remember what test servers that fail to
start so that subsequent tries are simply skipped.
2007-11-16 23:06:53 +00:00
Daniel Stenberg
44d408204a Michal Marek fixed the test suite to better deal with the case when the HTTP
ipv6 server can't run.
2007-11-15 22:41:31 +00:00
Yang Tse
ed636cbe44 Replace isupper with our uppercase macro version 2007-11-15 13:20:18 +00:00
Yang Tse
c960cd41e8 Fix comment 2007-11-08 16:32:31 +00:00
Dan Fandrich
c8355c27e9 Sort the directory listing because the server doesn't always do it. 2007-11-05 20:54:35 +00:00
Dan Fandrich
c2d7e2ae17 Added some keywords 2007-11-05 20:53:15 +00:00
Dan Fandrich
2f3d520571 Ignore more features that curl-config is not expected to know about 2007-11-01 21:20:24 +00:00
Dan Fandrich
8be493296d Make postcheck failure message more like the others 2007-11-01 17:42:39 +00:00
Dan Fandrich
6f33531861 Added test case 1014 to compare curl-config --features with curl --version 2007-11-01 03:09:27 +00:00
Dan Fandrich
16897354bc Added test case 1013 to check that curl-config --protocols matches the
protocols listed in curl --version
2007-11-01 00:36:55 +00:00
Dan Fandrich
6790c559af Detect curl source when valgrind provides an absolute source file name 2007-10-31 18:32:06 +00:00
Dan Fandrich
38cd2d781f Added test case 546 to check that subsequent FTP transfers work after a
failed one using the multi interface
2007-10-29 22:57:31 +00:00
Dan Fandrich
15feb8217f Fixed the 2000-series tests so that the downloaded data is actually checked 2007-10-27 01:04:36 +00:00
Dan Fandrich
59dccb34b0 Made the magic testnumber > 10000 support actually work 2007-10-27 01:02:57 +00:00
Dan Fandrich
e8057241c6 Fixed the test case to create only a single test file, which is all the
test harness supports.
2007-10-26 20:19:49 +00:00
Dan Fandrich
3f55ed0ef7 Check that all servers in the <server> section are supported, not just
the first.
2007-10-26 19:26:04 +00:00
Yang Tse
1d49c04545 Detect, log and avoid storing a request with a negative size. 2007-10-26 00:36:36 +00:00
Dan Fandrich
43885493ea Disable valgrind for this test to avoid the rlimit = soft rlimit problem
found by Michal Marek.
2007-10-25 21:49:45 +00:00
Dan Fandrich
1eac702c1a Added test case 2004.
Disable valgrind in test case 1004 due to a libtool bug.
2007-10-25 21:04:51 +00:00
Patrick Monnerat
0678a51d3b Allow test server to handle binary POSTs.
Tests 35, 544 545 added: binary data POSTs.
2007-10-25 19:40:05 +00:00
Dan Fandrich
b7dd186d36 When valgrind is disabled in the test file, don't run it at all (as opposed
to running it and ignoring its output).
2007-10-25 19:39:52 +00:00
Yang Tse
26c1c8b2ad Don't show valgrind log files of other tests 2007-10-25 18:07:13 +00:00
Daniel Stenberg
824aa5f918 Michal Marek fixed the test script to be able to use valgrind even when the
lib is built shared with libtool.
2007-10-25 14:30:51 +00:00
Daniel Stenberg
91e27ce755 Fixed a TFTP memory leak. Enabled test 2003 to verify this. 2007-10-25 07:47:38 +00:00
Dan Fandrich
65ed696625 Fixed the test TFTP server to support the >10000 test number notation
Added test cases 2002 and 2003 (the latter disabled for now)
2007-10-24 22:48:23 +00:00
Daniel Stenberg
3e3eaaada7 enable 2000 and 2001 2007-10-24 21:27:25 +00:00
Dan Fandrich
38649d1362 Added test cases 2000 and 2001 which test multiple protocols using the
same easy handle
Fixed the filecheck: make target to work outside the source tree
2007-10-24 19:40:07 +00:00
Dan Fandrich
4f00a02ba3 Fixed the test FTP server to support the >10000 test number notation 2007-10-24 19:39:29 +00:00
Patrick Monnerat
c67c54d4b3 Close log/server.input ASAP to avoid lengthy file lock on cygwin 2007-10-24 13:03:08 +00:00
Yang Tse
8e7da9464a Read callback should return 0 when no more data left 2007-10-23 15:10:48 +00:00
Yang Tse
92433e596b We use this ZERO_NULL to avoid picky compiler warnings,
when assigning a NULL pointer to a function pointer var.
2007-10-17 16:58:32 +00:00
Dan Fandrich
2741f97a69 Fixed a couple of typos that messed up the tests. 2007-10-12 02:09:45 +00:00
Dan Fandrich
d7fbe07ee2 Added some <keywords> sections and use some key words more consistently. 2007-10-12 01:44:22 +00:00
Dan Fandrich
2fce1f3e97 Fixed the -l option of runtests.pl
Added support for skipping tests based on key words.
2007-10-11 21:15:09 +00:00
Yang Tse
54bcde0a14 also log error message string 2007-10-09 23:24:28 +00:00
Yang Tse
660c86ce95 logmsg already appends '\n' 2007-10-09 23:21:29 +00:00
Daniel Stenberg
6dd6b4d1fa I enabled test 1009 and made the --local-port use a wide range to reduce the
risk of failures.
2007-10-04 21:26:26 +00:00
Daniel Stenberg
67d94514b0 Kim Rinnewitz reported that --local-port didn't work with TFTP transfers.
This happened because the tftp code always uncondionally did a bind()
without caring if one already had been done and then it failed. I wrote a
test case (1009) to verify this, but it is a bit error-prone since it will
have to pick a fixed local port number and since the tests are run on so
many different hosts in different situations I add it in disabled state.
2007-10-04 10:01:41 +00:00
Yang Tse
06be8bc389 On error, close "log/server.response" 2007-10-04 02:09:33 +00:00
Yang Tse
0ac5fd354b If TCP_NODELAY is not defined we can't disable the Nagle algorithm 2007-10-03 23:38:07 +00:00
Yang Tse
059707be32 Renamed a couple of global variables to avoid shadowing warnings 2007-10-02 16:05:28 +00:00
Daniel Stenberg
119364741e known bug #46: chunked-encoded CONNECT responses from a http proxy now works.
Added test case 1008 to verify. Note that #47 is still there.
2007-10-02 10:21:36 +00:00
Daniel Stenberg
8d1239c091 Disable the Nagle algorithm and send back responses in small chunks in an
attempt to force smaller bits to get read by clients.
2007-10-02 10:13:37 +00:00
Daniel Stenberg
9ca2644429 Added test536 that was accidentally missing. I also wrote up a new makefile
target called 'filecheck' so that if you run 'make filecheck' in this directory
it'll check if the local files are also mentioned in the Makefile.am so that
they are properly included in release archives!
2007-09-30 22:58:24 +00:00
Daniel Stenberg
ec08e2f9f2 Alex Fishman reported a curl_easy_escape() problem that was made the
function do wrong on all input bytes that are >= 0x80 (decimal 128) due to a
signed / unsigned mistake in the code. I fixed it and added test case 543 to
verify.
2007-09-30 22:40:24 +00:00
Yang Tse
b108c664ac Fix missing right parenthesis 2007-09-30 01:27:39 +00:00
Yang Tse
64db60397b Fix comparison between signed and unsigned 2007-09-30 01:01:43 +00:00
Dan Fandrich
9fc8800b6d Removed cut-and-paste cruft leading to fclose() of an unopened file 2007-09-27 17:22:10 +00:00
Dan Fandrich
16b95fc773 Enabled a few more gcc warnings with --enable-debug. Renamed a few
variables to avoid shadowing global declarations.
2007-09-27 01:45:22 +00:00
Daniel Stenberg
fd4cf78f36 Philip Langdale provided the new CURLOPT_POST301 option for
curl_easy_setopt() that alters how libcurl functions when following
redirects. It makes libcurl obey the RFC2616 when a 301 response is received
after a non-GET request is made. Default libcurl behaviour is to change
method to GET in the subsequent request (like it does for response code 302
- because that's what many/most browsers do), but with this CURLOPT_POST301
option enabled it will do what the spec says and do the next request using
the same method again. I.e keep POST after 301.

The curl tool got this option as --post301

Test case 1011 and 1012 were added to verify.
2007-09-26 12:44:59 +00:00
Daniel Stenberg
a6315359d7 Max Katsev reported that when doing a libcurl FTP request with
CURLOPT_NOBODY enabled but not CURLOPT_HEADER, libcurl wouldn't do TYPE
before it does SIZE which makes it less useful. I walked over the code and
made it do this properly, and added test case 542 to verify it.
2007-09-26 12:00:01 +00:00
Daniel Stenberg
775f86cb5a Immanuel Gregoire fixed KNOWN_BUGS #44: --ftp-method nocwd did not handle
URLs ending with a slash properly (it should list the contents of that
directory). Test case 351 brought back and also test 1010 was added.
2007-09-24 21:47:35 +00:00
Dan Fandrich
4686adb433 Added variable substitution to the <verify><file> section.
Made a few more tests work remotely.
2007-09-20 20:39:17 +00:00
Dan Fandrich
0159636373 Use double quotes in command lines for consistency. 2007-09-18 20:41:20 +00:00
Dan Fandrich
4f067b1d1c IPv6 is a required feature for these two tests, even if it's not obvious. 2007-09-18 17:41:04 +00:00
Dan Fandrich
ae60745e3e Fixed the required server entry 2007-09-17 23:23:13 +00:00
Dan Fandrich
7f496d8c3f Changed some FTP tests to validate the format of the PORT and EPRT commands
sent by curl, if not the addresses themselves.
2007-09-17 21:44:57 +00:00
Dan Fandrich
048c74f2fa Added %CLIENTIP and %CLIENT6IP data file substitution variables.
Added hooks to the test suite to make it possible to test a curl running
on a remote host.
2007-09-17 21:42:01 +00:00
Dan Fandrich
0ed57d370d Allow setting the IP address on which to listen for connections. 2007-09-17 21:39:34 +00:00
Dan Fandrich
9b11a84e74 Make the ftp server connect to the address given by curl in the PORT/EPRT
instead of hard-coding it to 127.0.0.1
2007-09-17 18:12:11 +00:00
Dan Fandrich
26f8de459a Made the directory postprocessor more forgiving of input directory format 2007-09-17 17:22:46 +00:00
Daniel Stenberg
e04151ed76 Michal Marek made libcurl automatically append ";type=<a|i>" when using HTTP
proxies for FTP urls.
2007-09-15 21:14:12 +00:00
Dan Fandrich
05e4a3026d Replaced 127.0.0.1 with %HOSTIP where possible 2007-09-14 19:32:31 +00:00
Daniel Stenberg
9e241864e3 Extracting the CURLINFO_PRIVATE pointer makes no point since nothing set
it. This caused a segfault in some fprintf() implementations. Like on Solaris.
2007-09-12 10:46:14 +00:00
Daniel Stenberg
9e88343a17 Daniel S (12 September 2007)
- Bug report #1792649 (http://curl.haxx.se/bug/view.cgi?id=1792649) pointed
  out a problem with doing an empty upload over FTP on a re-used connection.
  I added test case 541 to reproduce it and to verify the fix.

- I noticed while writing test 541 that the FTP code wrongly did a CWD on the
  second transfer as it didn't store and remember the "" path from the
  previous transfer so it would instead CWD to the entry path as stored. This
  worked, but did a superfluous command. Thus, test case 541 now also verifies
  this fix.
2007-09-11 22:23:57 +00:00
Dan Fandrich
d030dfa6e2 Added test case 1007 to test permission problem when uploading with TFTP
(to validate bug #1790403).
2007-09-07 20:05:20 +00:00
Dan Fandrich
6fd1cfeab1 Minor updates 2007-09-05 17:17:59 +00:00
Dan Fandrich
f6251734fc Added more accurate error code returns from SFTP operations. Added test
case 615 to test an SFTP upload failure.
2007-08-30 23:03:59 +00:00
Dan Fandrich
9f44a95522 Renamed several libcurl error codes and options to make them more general
and allow reuse by multiple protocols. Several unused error codes were
removed.  In all cases, macros were added to preserve source (and binary)
compatibility with the old names.  These macros are subject to removal at
a future date, but probably not before 2009.  An application can be
tested to see if it is using any obsolete code by compiling it with the
CURL_NO_OLDIES macro defined.

Documented some newer error codes in libcurl-error(3)
2007-08-30 20:34:57 +00:00
Dan Fandrich
5d4c981e13 Fixed a few compiler warnings. Try to do a slightly better job of
cleaning up after an OOM condition in curl_multi_add_handle
2007-08-30 18:26:19 +00:00
Dan Fandrich
5cb2ee878c Mention that 'make test' does more than just run all the tests (suggested
by Kris/tinker105 in bug #1779054) and mention the torture tests.
2007-08-28 18:23:19 +00:00
Daniel Stenberg
7cba40b218 Bug report #1779054 (http://curl.haxx.se/bug/view.cgi?id=1779054) pointed
out that libcurl didn't deal with large responses from server commands, when
the single response was consisting of multiple lines but of a total size of
16KB or more. Dan Fandrich improved the ftp test script and provided test
case 1006 to repeat the problem, and I fixed the code to make sure this new
test case runs fine.
2007-08-24 14:00:42 +00:00
Dan Fandrich
975fafdc49 Added test case 1005 to test excessively-long replies spread out over
multiple lines (similar to test case 1003).
2007-08-23 23:25:47 +00:00
Dan Fandrich
9537580ba2 Allow ftp server alternate replies to contain backslash-escaped control
characters.
2007-08-23 23:24:39 +00:00
Dan Fandrich
7ffae92daf Need even more time to wait for an accept. 2007-08-23 18:45:28 +00:00
Dan Fandrich
abca03cf36 Added test1004 to validate a previous fix for a memory leak when an
empty proxy server is selected.
2007-08-23 17:35:00 +00:00
Daniel Stenberg
381e372939 Bug report #1779054 (http://curl.haxx.se/bug/view.cgi?id=1779054) pointed
out that libcurl didn't deal with very long (>16K) FTP server response lines
properly. Starting now, libcurl will chop them off (thus the client app will
not get the full line) but survive and deal with them fine otherwise. Test
case 1003 was added to verify this.
2007-08-22 14:18:06 +00:00
Daniel Stenberg
c347db2e0a added a size > buffer size check to make it easier to track this in the
future
2007-08-22 14:09:13 +00:00
Daniel Stenberg
232a4553b8 Upped the buffer size to 17000+ bytes to prepare for the upcoming test 1003
that verfies ridiculously long server response lines. Also changed sprintf
to snprintf in a few places.
2007-08-22 13:57:49 +00:00
Dan Fandrich
1a8d8aa227 Increase timeout for accept for improved reliability on loaded servers. 2007-08-20 17:53:38 +00:00
Daniel Stenberg
014fe6971e remove stupid comment since there's no content in this test case 2007-08-17 22:24:51 +00:00
Daniel Stenberg
3217809294 Robson Braga Araujo filed bug report #1776235
(http://curl.haxx.se/bug/view.cgi?id=1776235) about ftp requests with NOBODY
on a directory would do a "SIZE (null)" request. This is now fixed and test
case 1000 was added to verify.
2007-08-17 22:22:43 +00:00
Daniel Stenberg
dcf698dc74 some keywords for future stats/coverage checks 2007-08-17 22:17:23 +00:00
Daniel Stenberg
54117be639 Moved the 5320 and 5322 into the 1000-series instead which is a documented
range. They are about FTP but the 100-199 range is full.
2007-08-17 22:11:25 +00:00
Daniel Stenberg
5a79532aee Song Ma provided a patch that cures a problem libcurl has when doing resume
HTTP PUT using Digest authentication. Test case 5320 and 5322 were also
added to verify the functionality.
2007-08-17 20:21:32 +00:00
Dan Fandrich
652e2cf57c Removed redundant dependency lines 2007-08-13 18:11:37 +00:00
Dan Fandrich
c7a66d5af4 There's no need to ignore the User-Agent for this test. 2007-08-09 03:28:16 +00:00
Dan Fandrich
2e60ca382d Fixed some icc compiler warnings. 2007-08-07 00:10:27 +00:00
Daniel Stenberg
6f750f3b57 Dmitriy Sergeyev reported a regression: resumed file:// transfers broke
after 7.16.2. This is much due to the different treatment file:// gets
internally, but now I added test 231 to make it less likely to happen again
without us noticing!
2007-08-02 14:09:08 +00:00
Dan Fandrich
5ecd56d964 Implemented only the parts of Patrick Monnerat's OS/400 patch that renamed
some few internal identifiers to avoid conflicts, which could be useful on
other platforms.
2007-07-23 18:51:22 +00:00
Dan Fandrich
cc44fb1dc8 Log the "<CMD> wasn't handled" error normally since it is now expected
to occur in a couple of tests.
2007-07-23 17:51:43 +00:00
Daniel Stenberg
4bbcc47f3f Added test case 354 that makes a simple FTP retrieval without password, which
verifies the bug fix in #1757328.
2007-07-22 10:08:59 +00:00
Daniel Stenberg
8ab495a088 test and verify curl -I on a single FTP file somewhat more than before 2007-07-21 21:49:23 +00:00
Daniel Stenberg
84e7bb85b1 To allow more flexibility in FTP test cases, I've removed the enforced states
from the test server code as they served no real purpose. The test server is
here to serve for the test cases, not to attempt to function as a real server!
2007-07-21 21:48:58 +00:00
Dan Fandrich
c7db74fe73 Revert the 512 change since newer versions of OpenSSH don't support DSA
keys that small.
2007-07-19 01:42:22 +00:00
Dan Fandrich
89d119646d Use 512 bit keys to reduce the time taken to generate them. This shouldn't
really reduce security since in the common case of a daily automated build
the keys are only used for a single test run lasting a few minutes before
being deleted.
2007-07-18 00:27:13 +00:00
Dan Fandrich
989dd9c34a Fixed test cases 613 and 614 by improving the log postprocessor to handle
a new directory listing format that newer libssh2's can provide.  This
is probably NOT sufficient to handle all directory listing formats that
server's can provide and should be revisited.
2007-07-17 21:53:38 +00:00
Daniel Stenberg
98b9349be7 make it do all three requests on the same connection 2007-07-16 21:44:46 +00:00
Daniel Stenberg
1da3d402f6 convert test case 540 to use a custom Host: header as well 2007-07-15 21:00:26 +00:00
Daniel Stenberg
1da3192d2d let's just export the whole argc + argv pair globally so that each test tool
can take advantage of it however they see fit!
2007-07-15 20:59:43 +00:00
Daniel Stenberg
15c8219340 Added test case 540 and lib540.c, the 'proxyauth.c' test app posted by Shmulik
Regev on the libcurl mailing list on 10 Jul 2007, converted to a test case.
2007-07-14 22:39:22 +00:00
Daniel Stenberg
5ae21ebde9 add support for arg3 as the third argument... 2007-07-14 22:38:18 +00:00
Daniel Stenberg
c7e0d8c30b add some better logging when HTTP server start fails, and make the failure
really hard if the test server can't be resolved (like for ::1 ipv6)
2007-07-14 22:33:46 +00:00
Daniel Stenberg
a53ba060c8 start the retry delay at 10 ms, double it for every failed attempt which makes
it 10 seconds delay after 11 attempts
2007-07-12 17:03:45 +00:00
Gunter Knauf
72bb5854f7 the timeout was probably too short with max = 1 sec, so lets test with 5 sec. 2007-07-12 10:54:15 +00:00
Gunter Knauf
0878b14f79 added time loop to sockfilt.c in order to wait for SO_REUSEADDR;
added go_sleep() to util.c.
2007-07-12 01:07:49 +00:00
Dan Fandrich
814b471d55 Added a code coverage section using gcc and gcov. 2007-07-10 22:55:51 +00:00
Dan Fandrich
19631f5d5f Force the time zone to GMT in the cookie tests in case the user is
using one of the so-called 'right' time zones that take into account
leap seconds, which causes the tests to fail (as reported by
Daniel Black in bug report #1745964).
2007-07-10 22:27:16 +00:00
James Housley
a8d6b40736 The previous commits changed the error code 2007-07-10 22:26:59 +00:00
Dan Fandrich
93bd512357 Fixed a curl memory leak reported by Song Ma with a modified version
of the patch he suggested.  Added his test case as test289 to verify.
2007-07-10 22:23:16 +00:00
Dan Fandrich
598bc3968e Add -a when running torture tests now that it's supported. 2007-07-05 01:38:00 +00:00
Gunter Knauf
c8a47bf662 revert previous patch since it turned out that older cp dont know this switch, argh! 2007-06-28 22:31:18 +00:00
James Housley
aed0cc6f2a Using fdopen() is a more correct way to implement the CURLOPT_NEW_FILE_PREMS
file.c, but the debug interface was missing.  This adds the routines needed
to make the memory debuging work for fdopen().
2007-06-28 11:11:29 +00:00
Gunter Knauf
5df5a2aa54 fixed nasty cp warnings about not beeing able to preserve ownership. 2007-06-28 01:20:30 +00:00
Daniel Stenberg
974fa1242a Adjusted how libcurl treats HTTP 1.1 responses without content-lenth or
chunked encoding (that also lacks "Connection: close"). It now simply
assumes that the connection WILL be closed to signal the end, as that is how
RFC2616 section 4.4 point #5 says we should behave.
2007-06-25 13:58:14 +00:00
Daniel Stenberg
a1b650ad7b Gerrit Bruchhuser pointed out a warning that the Intel(R) Thread Checker
tool reports and it was indeed a legitimate one and it is one fixed. It was
a use of a share without doing the proper locking first.
2007-06-21 14:23:38 +00:00
Daniel Stenberg
fc3c5dae87 and fix another flaw in the singlecwd case when we get ftp://site.com/, also
from the #1739100 bug report
2007-06-19 12:33:28 +00:00
Daniel Stenberg
cc26cc5dcd Test listing of root dir with the three ftp-methods. KNOWN_BUGS #44 make me
disable test 351 by default by I add the test case anyway to make it easier
to work on this problem in the future.
2007-06-18 21:04:05 +00:00
Daniel Stenberg
b0aa11fde7 Tom Regner added /usr/lib/misc to the path to scan for sftp to make the
sftp tests run fine on gentoo
2007-06-14 21:16:08 +00:00
Dan Fandrich
c45d44fee9 Wait longer for servers to start up since the ssh server needs to generate
keys the first time (which can take a while on a slow or loaded host).
Enforce a longer startup wait time for the ssh client SOCKS server, too.
Check for an error code from startnew() when starting any server.
2007-06-11 17:53:10 +00:00
Dan Fandrich
1e718a515a We do not use RSA keys in the test suite. 2007-06-11 17:49:25 +00:00
Dan Fandrich
477e27f99d Fixed the test harness so that it actually kills the ssh being used as
the SOCKS server.
2007-06-08 18:56:05 +00:00
Dan Fandrich
6a84d492f1 Improved compatibility with perl 5.0 on the 'open' calls. 2007-06-08 17:32:24 +00:00
Dan Fandrich
873d95a34c Incorporated Daniel Black's test706 and test707 SOCKS test cases. 2007-06-08 17:21:40 +00:00
Dan Fandrich
1500e95839 Improved compatibility with perl 5.0 on the 'open' calls. 2007-06-08 17:03:50 +00:00
Dan Fandrich
ad80490711 Changed the opens to work on older versions of perl.
Redirect ssh output to ssh.log
2007-06-07 22:42:26 +00:00
Dan Fandrich
073a6cea45 Renamed the sshd log file to sshd.log.
Added more options to the ssh config file to improve the consistency of
the test environment.
Force a rewrite of the ssh config files on every invocation.
Changed the opens to work on older versions of perl.
2007-06-07 21:42:33 +00:00
Dan Fandrich
345ffd1163 Cleaned up SOCKS tests. Use a magic port number instead of killserver
to do nonlistening server tests, like other tests.
2007-06-07 20:14:00 +00:00
Dan Fandrich
f0ffb35d55 Fixed some problems in starting SSH for use in SOCKS. 2007-06-07 19:49:09 +00:00
Daniel Stenberg
e86dfd9688 added 703: a socks5 version of 702 2007-06-05 13:52:34 +00:00
Daniel Stenberg
a466b31574 Daniel Black's test suite fixes and initial test cases for SOCKS4/5 using
openssh
2007-06-05 13:50:59 +00:00
Yang Tse
9583b51d80 In case of test failure, try not to show log files of other tests 2007-05-30 17:15:05 +00:00
Dan Fandrich
09fd3b4935 Match file times occurring in the morning. 2007-05-16 17:45:53 +00:00
Dan Fandrich
ea43bb013b Added support for quote commands before a transfer using SFTP and test
case 614.
Allow SFTP quote commands chmod, chown, chgrp to set a value of 0.
2007-05-15 00:28:50 +00:00
Dan Fandrich
b0a4c992e7 Added SFTP directory listing test case 613. 2007-05-14 22:03:42 +00:00
Dan Fandrich
85707460e5 Added FTPS upload tests 408 and 409. 2007-05-10 20:03:20 +00:00
Dan Fandrich
ed998270aa Added FTPS test cases 406 and 407 2007-05-08 22:14:30 +00:00
Dan Fandrich
6c8e6549d0 Check the return code from curl_multi_add_handle() 2007-05-02 06:02:13 +00:00
Dan Fandrich
5187faeeb9 Improved the test harness to allow running test servers on other than
the default port numbers, allowing more than one test suite to run
simultaneously on the same host.
2007-04-30 20:15:33 +00:00
Dan Fandrich
1228ec9fbb Fixed some tests to stop hard-coding the port number. 2007-04-30 19:05:48 +00:00
Dan Fandrich
f213d0db98 Added support in runtests.pl for "!n" test numbers to disable individual tests. 2007-04-25 23:18:52 +00:00
Dan Fandrich
9bdb05b4d6 When displaying log files, truncate the really longs ones such as you
would get from a torture test.
2007-04-25 20:09:32 +00:00
Dan Fandrich
61d7e720a5 Treat log files and -k the same when running torture tests as when not. 2007-04-24 23:28:57 +00:00
Dan Fandrich
17507eac85 Clear out FTP server options before each new client.
Wait for child processes to die to avoid creating zombies.
2007-04-24 21:30:39 +00:00
Dan Fandrich
6a35841b2e Added tests 610-612 to test more SFTP post-quote commands. 2007-04-23 23:00:38 +00:00
Dan Fandrich
28dde78dde Added <postcheck> support to the test harness. 2007-04-23 22:58:45 +00:00
Dan Fandrich
37171809f6 Mention NSS, <postcmd> commands 2007-04-23 21:18:30 +00:00
Dan Fandrich
3398eca7c3 Changed another nonexistent host name to be under the haxx.se domain
to guarantee against it ever being valid.
2007-04-23 01:51:02 +00:00
Dan Fandrich
043070f90e Changed an error message slightly so it can be caught easier by the
autobuild logs scanner.
2007-04-20 17:16:32 +00:00
Dan Fandrich
ae3d5949b8 Various test file cleanups, including using <servercmd> instead of writing
directly to ftpserver.cmd and removing unneeded empty sections.
2007-04-18 20:22:01 +00:00
Dan Fandrich
66fc5498d2 Added test cases 296, 297 and 298 to test --ftp-method handling 2007-04-18 06:30:28 +00:00
Daniel Stenberg
e3dab1bea2 jayjwa added the "DH PARAMETERS" to make this work with recent stunnels 2007-04-14 20:29:09 +00:00
Dan Fandrich
71a0d50f48 Added test cases 294 and 295 to test --ftp-account handling 2007-04-13 20:59:15 +00:00
Yang Tse
8d2a0fe85b Fix test case 534 which started to fail 2007-04-13 due to the existance
of a new host on the net with the same silly domain the test was using
for a host which was supposed not to exist.
2007-04-13 11:35:19 +00:00
Dan Fandrich
35935d71d2 Honour the -a option when -t is enabled. 2007-04-10 00:37:56 +00:00
Dan Fandrich
de17f4436e Changed error return codes to match update code. 2007-04-09 18:24:56 +00:00
Yang Tse
248a5381d4 In case of test failure, try not to show log files of other tests 2007-04-06 04:24:13 +00:00
Dan Fandrich
c1ab3e2d59 Enabled the ssh tests 600-609. 2007-04-05 19:28:33 +00:00
Yang Tse
a0a79ce853 unify fopen() failure error message among tests, allowing
the testsuite to count them as errors of the same kind
2007-04-05 11:05:36 +00:00
Yang Tse
70f9a13ecb Further improve displaying of individual logfiles 2007-04-05 00:14:27 +00:00
Yang Tse
5625e5d5b8 add debug message and expand comment 2007-04-04 08:58:36 +00:00
Yang Tse
8a529bd987 test can be allowed to run if fopen() is capable of fopen()ing
three additional files once that we have already open()ed the
big bunch of file descriptors.
2007-04-04 06:39:03 +00:00
Yang Tse
a1f72943e9 cleanup 2007-04-04 05:04:47 +00:00
Dan Fandrich
0969a96732 Whoops--didn't mean to enable the ssh tests quite yet. 2007-04-04 04:57:40 +00:00
Yang Tse
ec8019b2a8 test can be allowed to run if fopen() is capable of fopen()ing
SAFETY_MARGIN additional files once that we have already open()ed
the big bunch of file descriptors.
2007-04-04 03:19:59 +00:00
Dan Fandrich
27d2d78059 Added more SSH tests (left disabled for now). 2007-04-04 00:48:37 +00:00
Yang Tse
584f3639e3 update copyright year 2007-04-03 18:25:18 +00:00
Yang Tse
2886ce96b0 Verify if the test is limited by an ancient stdio with a 256
open file limit.  In this case the test is skipped with a
message showing this limitation when the number of open files
needed for the test is greater than 256.
2007-04-03 18:02:02 +00:00
Yang Tse
3344142b87 fix enumeration of disabled tests when they have the highest number 2007-04-03 15:59:52 +00:00
Yang Tse
70550a0572 Improve displaying of logfiles making sure all lines end with \n
and avoid using ! as last char of line.
2007-04-03 12:27:03 +00:00
Yang Tse
7bbad0b534 try not to link with unneeded libs, avoiding global LDADD 2007-04-03 02:57:54 +00:00
Yang Tse
161be66c89 when detecting un/supported sshd options use curl's sshd config file. 2007-04-03 02:36:55 +00:00
Dan Fandrich
4095c9de37 Eliminate the sshd option checking dependency on wc and make it faster. 2007-04-03 00:06:39 +00:00
Yang Tse
b8c12fe658 fix error in previous commit 2007-04-02 04:14:59 +00:00
Yang Tse
bdbaedc452 verify ssh daemon version 2007-04-02 01:21:57 +00:00
Gunter Knauf
0839621f47 print update message only if we really update CVS. 2007-04-01 13:59:50 +00:00
Dan Fandrich
ef10eaeb29 Added scp and sftp nonexistent file retrieval tests, but leave them
disabled for now.
2007-04-01 06:28:12 +00:00
Dan Fandrich
f8d78d57a7 Disable the SSH tests until the libssh2 bugs that causes test hangs
are sorted out.
2007-03-31 20:00:40 +00:00
Yang Tse
fdc1b61507 sshd might fail to start if given an unsupported configuration option.
Try to avoid this problem checking for some possible unsupported options,
and avoid using them in the configuration file.
2007-03-31 03:21:08 +00:00
Dan Fandrich
7fd154f094 Fixed some typos in the comments. 2007-03-30 22:07:48 +00:00
Dan Fandrich
a209c32bf3 Resurrected old FTPS error tests 402 and 403 as 404 and 405. 2007-03-30 22:04:14 +00:00
Dan Fandrich
40981286ea Added HTTP --max-filesize tests and FTPS CCC failure test. 2007-03-30 18:50:55 +00:00
Yang Tse
f55a1c3a6c Searching for sshd and sftp-server will be done first
in the PATH and afterwards in other common locations.
2007-03-30 10:11:49 +00:00
Yang Tse
c5586a65c2 ignore more generated files 2007-03-30 02:59:39 +00:00
Dan Fandrich
ffb11ad5c6 Don't tear down the ftp connection if the maximum filesize was exceeded
and added tests 290 and 291 to check.
2007-03-30 01:13:47 +00:00
Dan Fandrich
fbb1e49215 Added FTP-SSL failure test 402 2007-03-30 00:08:41 +00:00
Dan Fandrich
c26320d94f Added ftps upload test 401 2007-03-29 22:50:23 +00:00
Dan Fandrich
c563a53c16 Eliminated extra / in scp/sftp URLs. 2007-03-29 19:19:06 +00:00
Dan Fandrich
e37a49086e Add another option to tighten the test environment. 2007-03-29 18:46:09 +00:00
Dan Fandrich
f776c1d2eb Abort if attempting to run as root. 2007-03-29 05:25:11 +00:00
Dan Fandrich
31b1e988f4 Only show exit status in verbose mode. 2007-03-28 04:36:09 +00:00
Dan Fandrich
884171aecf Don't launch sshd as a daemon so its output can be logged. 2007-03-28 04:05:55 +00:00
Dan Fandrich
282127fbff Tighten up a few more OpenSSH options 2007-03-27 04:01:39 +00:00
Dan Fandrich
2166645ce4 Added SFTP and SCP upload tests in test602 & test603 2007-03-26 19:23:00 +00:00
Dan Fandrich
844f5b6b45 Added test600 and test601, SFTP and SCP file retrieval tests. 2007-03-26 18:04:05 +00:00
Gunter Knauf
424063235b catch up new lib extension when build with gcc/nlmconv. 2007-03-26 17:18:36 +00:00
Dan Fandrich
3b355421ec Added sshserver.pl 2007-03-24 06:29:58 +00:00
Dan Fandrich
0dd1219668 Fixed a memory leak when specifying a proxy with a file: URL and added
test case 288 to verify it.
2007-03-24 02:15:20 +00:00
Dan Fandrich
b7131009fb Changed the test harness to attempt to gracefully shut down servers
before resorting to the kill -9 hammer.

Added test harness infrastructure to support scp/sftp tests, using
OpenSSH as the server.
2007-03-24 01:01:28 +00:00
Daniel Stenberg
0c817b6614 language fix 2007-03-18 23:16:36 +00:00
Daniel Stenberg
ff314d7600 detect and show if built with yassl, but also set the "openssl" flag internally
since that is the API yassl attempts to provide
2007-03-18 22:37:23 +00:00
Daniel Stenberg
c1f3edbdd1 openssl/bio.h doesn't exist when we build with yassl so avoid trying 2007-03-16 22:44:46 +00:00
Dan Fandrich
a20a6f67c5 Fixed the test case to use a truly invalid urlglob range. 2007-03-16 04:34:53 +00:00
Dan Fandrich
ae07fd2ba8 libcurl supplies its own crypto hash functions when SSL is disabled, so
'crypto' tests aren't dependent on SSL.  Compiling with
--disable-crypto-auth will cause test failures, however.
2007-03-12 20:50:16 +00:00
Yang Tse
40087ce7c0 change max allowed time for this test to complete to 90 seconds 2007-03-10 00:19:05 +00:00
Dan Fandrich
e12d46ac50 Updated the test harness to add a new "crypto" feature check and updated the
appropriate test case to use it.  For now, this is treated the same as the
"SSL" feature because curl doesn't list it separately.
2007-03-09 23:39:42 +00:00
Dan Fandrich
1962ebf8e7 Updated the test harness to check for protocol support before running each
test, fixing KNOWN_BUGS #11.  Fixed some tests to more accurately specify
their required servers and features.
2007-03-09 21:01:39 +00:00
Dan Fandrich
7c144d5a7e Made a few cleanups. 2007-03-08 20:00:28 +00:00
Dan Fandrich
0f0540d00b Added SSL as a required feature for test case 400. 2007-03-08 19:50:32 +00:00
Dan Fandrich
1bfa7dfe39 Added test infrastructure to support basic FTPS tests. This currently
supports only ftps:// URLs with --ftp-ssl-control specified, which
implicitly encrypts the control channel but not the data channels.  That
allows stunnel to be used with an unmodified ftp server in exactly the
same way that the test https server is set up.
Added test case 400 as a basic FTPS test.
2007-03-08 02:38:49 +00:00
Yang Tse
e5f8e5e57a stricter newline policy 2007-03-03 05:16:57 +00:00
Yang Tse
53a3abc76b 30 seconds isn't long enough for this test on a loaded server. 2007-03-03 04:27:19 +00:00
Yang Tse
bfd6474f6b stricter newline policy 2007-03-03 02:06:44 +00:00
Yang Tse
cef5b14baa Reduce the posibility of leaving the sockfilter hanging around when
tearing down the test ftp server due to a read error condition.
2007-03-01 16:42:02 +00:00
Yang Tse
e817eb6cec log a 1120 chars long string to aid in quoted-printable and soft
line break detection in daily build logs.
2007-02-27 23:46:48 +00:00
Dan Fandrich
fe0afb211e 5 seconds isn't always enough time to start a server on a loaded system. 2007-02-22 18:35:57 +00:00
Yang Tse
141b3d0c2f remove redundant check in timestamp detection 2007-02-22 17:34:02 +00:00
Yang Tse
69565afab0 Check for stdbool.h at configuration stage, and include it if available.
Check for lowercase 'bool' type at configuration stage. If not available
provide a suitable replacement with a type definition of 'unsigned char'
in setup_once.h

Move definitions of TRUE and FALSE to setup_once.h
2007-02-22 02:51:54 +00:00
Daniel Stenberg
f19d333ef6 - Ravi Pratap provided work on libcurl making pipelining more robust and
fixing some bugs:
  o Don't mix GET and POST requests in a pipeline
  o Fix the order in which requests are dispatched from the pipeline
  o Fixed several curl bugs with pipelining when the server is returning
    chunked encoding:
    * Added states to chunked parsing for final CRLF
    * Rewind buffer after parsing chunk with data remaining
    * Moved chunked header initializing to a spot just before receiving
      headers
2007-02-21 21:59:40 +00:00
Yang Tse
29bb6f65f1 Move header file inclusion logic and definition of timeval
struct for platforms that don't have it to setup_once.h
2007-02-20 12:12:27 +00:00
Yang Tse
37f07a54bd Several corrections & changes to what has been stated in revision 1.45
1) The maketgz script does not insert the timestamp in curlver.h,
   it actually updates it. For CVS versions it is the "CVS" string.

2) testcurl.pl will always print the "date" string which represents
   the moment the test build is run.

3) testcurl.pl may not print the "timestamp" string since the script
   may end before it is printed out. (i.e. unable to update from CVS)

4) The "timestamp" string printed will be the same as the "date" one
   unless one of the following conditions is met.

   *) It is a tarball-based build. Timestamp will be creation time.

   *) CVS update has been done. Timestamp will be end of CVS update.
2007-02-20 05:28:41 +00:00
Yang Tse
da8c666e4f add tutil_tvdiff_secs() for completeness 2007-02-20 01:09:38 +00:00
Yang Tse
78a1e5d1a6 fix typo 2007-02-19 19:46:07 +00:00
Yang Tse
116f60e063 Show libcurl's timestamp. This timestamp is only available in curlver.h
for tarball-based tests and builds, the maketgz script inserts it when
the tarball is created. For CVS-based tests and builds the timestamp we
show is the current UTC build time as it is the CVS version timestamp.

In this way, all builds will have a valid source code timestamp which
isn't related to the moment the tests and build is performed, with the
exception of CVS-based ones which have the same "date" and "timestamp"
2007-02-19 19:41:48 +00:00
Yang Tse
75fca27f8e log a message, stating the need of openssl to run this test 2007-02-19 04:51:47 +00:00
Yang Tse
f2cd2882a0 Oops missing var 2007-02-19 03:59:41 +00:00
Yang Tse
31e598d2f3 add debug messages for initialization failures 2007-02-19 02:03:58 +00:00
Yang Tse
d9bf55570b Move portable error number symbolic name definitions to setup_once.h 2007-02-17 13:51:24 +00:00
Yang Tse
789fd0b74a Replicate the configure tests that determined that timeval was available. 2007-02-17 11:43:52 +00:00
Dan Fandrich
3f140a6008 getpart implicitly drags in some networking functions, so it needs to be
linked to the networking libraries.
2007-02-17 08:16:53 +00:00
Dan Fandrich
a0a47f2767 Better separate the library dependencies into those required by libcurl
and those required by other components to avoid forcing unneeded
dependencies into the target objects.
2007-02-17 01:29:01 +00:00
Dan Fandrich
213017e9cf Remove C99isms 2007-02-17 01:25:32 +00:00
Yang Tse
d46cab4a94 add debug messages for fopen() failures 2007-02-16 19:41:25 +00:00
Yang Tse
4dc453c087 add debug messages for fopen() failures 2007-02-16 19:17:05 +00:00
Yang Tse
a1d5983991 use macros ERRNO, SET_ERRNO(), SOCKERRNO and SET_SOCKERRNO() for errno handling 2007-02-16 18:19:35 +00:00
Yang Tse
4894ce16fc use macros ERRNO, SET_ERRNO(), SOCKERRNO and SET_SOCKERRNO() for errno handling 2007-02-16 16:01:19 +00:00
Yang Tse
5a267c4312 compiler warning fix 2007-02-14 13:46:08 +00:00
Yang Tse
7033a1c072 enhance HTTP server request input writing,
retrying upon EINTR errors.
2007-02-14 00:28:01 +00:00
Daniel Stenberg
4efa0d9f68 ftp@example.com is now the new anonymous FTP password. I opted for 'ftp' on
the left side of @ to make it short(er).
2007-02-13 22:50:16 +00:00
Daniel Stenberg
7f70dbcad5 Rob Crittenden added support for NSS (Network Security Service) for the
SSL/TLS layer. http://www.mozilla.org/projects/security/pki/nss/
2007-02-12 22:32:37 +00:00
Yang Tse
8c9233f6b2 Include both testutil.c and testutil.h, and not just testutil.c, in the
list of source files for those tests that use it. Otherwise testutil.h
might not be found by the compiler.
2007-02-09 12:41:57 +00:00
Yang Tse
6fcf98f617 Some tests were using functions curlx_tvnow and curlx_tvdiff which are not
part of the official libcurl API http://curl.haxx.se/lxr/source/lib/README.curlx
The documented way of using them would be to use timeval.c as a source code file.

The above described method works very well when statically linking libcurl and
apps, test programs, but has several drawbacks when you build a true shared
libcurl (i.e. Name space clash at linkage stage as functions are defined more
than once. Windows makefiles are not capable of handling this system of
source-level sharing)

So...

Now testutil.h and testutil.c define and implement tutil_tvnow and tutil_tvdiff
which replace curlx_tvnow and curlx_tvdiff for the libtest programs. Doing this
we avoid the above described problems, and the code in the testsuite does not
impose the need to keep those functions public in libcurl even when not part of
the API.
2007-02-09 01:17:24 +00:00
Yang Tse
2f4fe0175b Some tests were using functions curlx_tvnow and curlx_tvdiff which are not
part of the official libcurl API http://curl.haxx.se/lxr/source/lib/README.curlx
The documented way of using them would be to use timeval.c as a source code file.

The above described method works very well when statically linking libcurl and
apps, test programs, but has several drawbacks when you build a true shared
libcurl (i.e. Name space clash at linkage stage as functions are defined more
than once. Windows makefiles are not capable of handling this system of
source-level sharing)

So...

Now testutil.h and testutil.c define and implement tutil_tvnow and tutil_tvdiff
which replace curlx_tvnow and curlx_tvdiff for the libtest programs. Doing this
we avoid the above described problems, and the code in the testsuite does not
impose the need to keep those functions public in libcurl even when not part of
the API.
2007-02-09 01:11:14 +00:00
Yang Tse
9b6474378a Year 2038 has its own problems (32 bit integer overflow).
So cookie expiration date is lowered to expire at most in 2035.
2007-02-05 02:38:25 +00:00
Gisle Vanem
a7748c2024 Constify argument to suburl(). Remove trailing space. 2007-02-04 12:12:02 +00:00
Yang Tse
c26ec47e90 compiler warning fix 2007-02-02 17:16:06 +00:00
Yang Tse
f71c8c7d84 fix leftover updating cookie expiration date 2007-02-02 11:49:15 +00:00
Yang Tse
68f3c2adca reported in bug: #1566077 the former URL mentioned in the generated cookie
jar has died and we now instead point out our own version of that
2007-02-02 02:12:34 +00:00
Yang Tse
2a8e2edf83 fix test case 62 which was failing due to cookies expiring 1 Feb 2007 2007-02-02 01:36:08 +00:00
Yang Tse
401598c2fe more fixes for the testsuite cookie expiration issue 2007-02-02 01:05:50 +00:00
Yang Tse
d60848d04b cookie expiration time got us with pants at our knees.
Next time in 2038 :-)
2007-02-02 00:10:40 +00:00
Yang Tse
c2639e0738 when using select() instead of poll, skip the test if the number of
open file descriptors is greater than FD_SETSIZE minus SAFETY_MARGIN,
also skip the test if any of the open file descriptors has a number
greater than FD_SETSIZE minus SAFETY_MARGIN.
2007-01-31 15:34:53 +00:00
Yang Tse
d7d5baa0e2 fix temp string buffer variable name 2007-01-30 13:21:39 +00:00
Yang Tse
bad67830b3 skip test on platforms on which we use select() instead
of poll() and select() happens to be bound by FD_SETSIZE
2007-01-30 03:48:29 +00:00
Daniel Stenberg
a4b39c6ab8 the same source file is re-used for multiple tests and I missed to add the
timval.c dependency on some of those
2007-01-29 20:37:02 +00:00
Gisle Vanem
d10e174fd1 Some compilers lacks <sys/time.h>. Include "timeval.h" to simplify the #ifdefs. 2007-01-29 20:24:00 +00:00
Daniel Stenberg
4d8dcf7b77 the libtest source codes that use curlx_tv* functions MUST use the
lib/timeval.c source code since those functions are not in the API (and might
not be accessible)
2007-01-29 10:09:06 +00:00
Daniel Stenberg
abdbd3100f - Michael Wallner reported that when doing a CONNECT with a custom User-Agent
header, you got _two_ User-Agent headers in the CONNECT request...! Added
  test case 287 to verify the fix.
2007-01-29 09:26:36 +00:00
Yang Tse
e09450103b Compiler warning fix 2007-01-28 03:51:10 +00:00
Yang Tse
b6f889085d update copyright year notice 2007-01-27 03:43:05 +00:00
Gunter Knauf
abb4cdafe9 set proper lib extension for non-configure mingw32 builds on Win32. 2007-01-25 14:06:38 +00:00
Dan Fandrich
44ac2776ae Fixed a dangling pointer problem that prevented the http_proxy environment
variable from being properly used in many cases (and caused test case 63
to fail).
2007-01-25 01:35:43 +00:00
Dan Fandrich
f68323da7d Ignore XML DOCTYPEs and declarations. 2007-01-23 20:24:26 +00:00
Dan Fandrich
33bea767eb Convert (most of) the test data files into genuine XML. A handful still
are not, due mainly to the lack of support for XML character entities
(e.g. & => &amp; ).  This will make it easier to validate test files using
tools like xmllint, as well as edit and view them using XML tools.
2007-01-23 02:25:56 +00:00
Dan Fandrich
6da70628c6 Make the test script tag parser a bit more robust.
Check for the .exe extension on mingw32 builds.
2007-01-18 20:32:46 +00:00
Dan Fandrich
3bae748256 Added precheck that curl supports the 'openssl' engine in test 307. 2007-01-18 18:04:20 +00:00
Dan Fandrich
521c4b303d Fixed some tag typos in the test data files. 2007-01-17 20:36:56 +00:00
Dan Fandrich
a2effd123a Disabled test 307 for now. 2007-01-17 19:23:32 +00:00
Dan Fandrich
32fe5b14ec Added simple OpenSSL crypto engine tests. 2007-01-16 18:34:58 +00:00
Dan Fandrich
f11d3c329c Added TFTP upload tests. 2007-01-15 21:06:12 +00:00
Dan Fandrich
b0d13fa4cb Leave the TFTPD test server running after a file upload.
Flush the protocol log data so it's immediately available to the test harness.
2007-01-15 21:03:53 +00:00
Dan Fandrich
5ec5b95f54 Added test for TFTP retrieve of boundary case 512 byte file. 2007-01-10 23:40:22 +00:00
Dan Fandrich
7efb955fd0 Added test of TFTP server error reporting. 2007-01-10 03:32:19 +00:00
Daniel Stenberg
e61e09f658 prevent compiler warning since we use base64.h from libcurl which now has
function(s) using SessionHandle pointers
2007-01-04 23:04:50 +00:00
Daniel Stenberg
88c8d72a21 Alexey Simak found out that when doing FTP with the multi interface and
something went wrong like it got a bad response code back from the server,
libcurl would leak memory. Added test case 538 to verify the fix.

I also noted that the connection would get cached in that case, which
doesn't make sense since it cannot be re-use when the authentication has
failed. I fixed that issue too at the same time, and also that the path
would be "remembered" in vain for cases where the connection was about to
get closed.
2006-12-11 09:32:58 +00:00
Daniel Stenberg
090f5a9a45 added the new test 282 2006-11-25 13:32:48 +00:00
Daniel Stenberg
da58d03ff7 Venkat Akella found out that libcurl did not like HTTP responses that simply
responded with a single status line and no headers nor body. Starting now, a
HTTP response on a persistent connection (i.e not set to be closed after the
response has been taken care of) must have Content-Length or chunked
encoding set, or libcurl will simply assume that there is no body.

To my horror I learned that we had no less than 57(!) test cases that did bad
HTTP responses like this, and even the test http server (sws) responded badly
when queried by the test system if it is the test system. So although the
actual fix for the problem was tiny, going through all the newly failing test
cases got really painful and boring.
2006-11-25 13:32:04 +00:00
Yang Tse
268fe09322 Revert ftpserver.pl back to revision 1.74 Adding change done in 1.76
This is done to back out changes done in revisions 1.77 and 1.75
2006-11-20 16:58:41 +00:00
Yang Tse
7a557e984a Revert runtests.pl back to revision 1.212
This is done to back out changes done from revisions 1.213 to 1.217
2006-11-20 16:58:04 +00:00
Yang Tse
f1a55cbe6d Revert ftp.pm back to revision 1.5 Adding copyright notice.
This is done to back out changes done from revisions 1.6 to 1.10
2006-11-20 16:57:01 +00:00
Yang Tse
1e35d95df8 Add some message logging 2006-11-20 10:35:25 +00:00
Yang Tse
d8387b418d stop slaves before stopping servers 2006-11-20 06:22:51 +00:00
Yang Tse
adea16a294 Revert to KILL test servers until all test servers
have proper TERM and INT signal handlers implemented.
2006-11-20 03:25:17 +00:00
Daniel Stenberg
7f2d5cab2d log the sleep, like when done in test 190 2006-11-19 22:48:40 +00:00
Yang Tse
8db353e1d7 Avoid passing child pid and test server pid, using the running
servers hash, and adjust message arguments accordingly.
2006-11-19 03:47:56 +00:00
Yang Tse
e6978117a7 Comment out the use of the "warnings" module now that ftp.pm seems to
be clear of warnings. Uncomment it if this module is further modified.

The "warnings" module requires perl 5.006 or later. Previous perl
versions don't have it and die on missing modules.
2006-11-19 03:47:11 +00:00
Yang Tse
0b5e1a9b2f Avoid keeping dupe pids When forked pid and test server pid is the same one. 2006-11-18 04:07:01 +00:00
Yang Tse
2e17a97474 Fix warning "Use of uninitialized value in ...".
If the list has only one item avoid sort subroutine.
2006-11-18 04:05:42 +00:00
Yang Tse
74ddbd8a3b The hash of running servers is now a hash of hashes which for each running
server holds not only its two main pids, but also the pidfile of the test
server and the 'slavepidfiles' for ftp* servers. This allows a better control
when stopping servers.

Now from runtests.pl when test servers are stopped they are signalled in
sequence TERM, INT and KILL allowing time in between for them to die. This
will give us a chance of gracefully stopping test servers, which we didn't
have when we were killing them in first instance.
2006-11-17 16:44:22 +00:00
Daniel Stenberg
e264f699d4 Tor Arntsen spotted this mistake 2006-11-13 13:48:55 +00:00
Yang Tse
17d4f9513e Remove showing stderr log files unconditionally for tests 518 and 537.
Add failure checking for servers when fork()ed.

Use same code path in 'stopserver' when called with a single or multiple pids.
2006-11-09 13:20:42 +00:00
Yang Tse
318a7584f3 add a couple more of debugging messages 2006-11-03 14:13:25 +00:00
Yang Tse
78081a1652 reduce max size of dinamically allocated arrays to minimize the nasty
behaviour some versions of IRIX exhibit of committing suicide on big
mallocs instead of just returning a friendly null pointer
2006-11-03 10:05:21 +00:00
Yang Tse
1dee2cd55e fix comments and renumber rlimit return codes
fix closing of fd's when limit is reached
2006-11-03 01:57:25 +00:00
Yang Tse
426ecfd136 fix comments and renumber rlimit return codes 2006-11-03 01:56:55 +00:00
Yang Tse
7f1870da5f remove leftover comment 2006-11-02 20:56:40 +00:00
Yang Tse
2149a095f7 update and split test cases 518 and 537 into its own source code file 2006-11-02 20:50:18 +00:00
Yang Tse
e8d21adbaa code cleanup 2006-11-02 15:47:24 +00:00
Yang Tse
fa28531322 use our internal string functions and replace sprintf with snprintf 2006-11-02 03:45:07 +00:00
Yang Tse
deef85ca9a Update protocol verification end of lines 2006-11-02 01:21:28 +00:00
Yang Tse
4f4427ff41 check symbol HAVE_UNISTD_H instead of UNISTD_H to include unistd.h 2006-11-02 00:34:21 +00:00
Yang Tse
905ca77c9e test 518 is all about testing libcurl functionality
when more than FD_SETSIZE file descriptors are open.
This means that if for any reason we are not able to
open more than FD_SETSIZE file descriptors then test
518 should not be run.

test 537 is all about testing libcurl functionality
when the system has nearly exhausted the number of
free file descriptors. Test 537 will try to run with
very few free file descriptors.
2006-11-01 18:33:50 +00:00
Yang Tse
f51c567de3 Show stderr log file for test 518 unconditionally.
In this way we'll be able to sort out problems that might
arise in the prechek phase of the 518 test.

Once that 518 has been verified this change will be undone.
2006-10-31 01:30:42 +00:00
Yang Tse
9b2acca63e Sync comment with code and add three messages more 2006-10-31 01:24:03 +00:00
Yang Tse
afcd9f1b1c Address some pitfalls in the rlimit() function check that were
preventing execution of this test on many platforms
2006-10-30 17:24:31 +00:00
Yang Tse
609044aea2 Compiler warning fix 2006-10-29 21:19:23 +00:00
Daniel Stenberg
5aa0db8681 a small unification of the error text on failed server startups 2006-10-27 21:07:08 +00:00
Yang Tse
772a985dc3 Update copyright year, since the file has been modified 2006-10-27 03:47:57 +00:00
Yang Tse
32ad212ac9 30 seconds isn't long enough for this test on a loaded server. 2006-10-27 01:58:59 +00:00
Gisle Vanem
125830ab4b Use proper 'stat' structure for fstat(). I.e. 'struct _stati64' and '_fstati64()'
on Win32.
2006-10-26 14:30:11 +00:00
Yang Tse
5b75b423e6 Improved rlimit logic:
- Take in account RLIM_INFINITY.
- Verify that soft limit is actually changed when doing so.
- Show errno in case getrlimit or setrlimit fails.
- Keep file descriptors open only while runing this test.
2006-10-26 13:55:24 +00:00
Yang Tse
cd3029f36f 30 seconds isn't long enough for this test on a loaded server. 2006-10-26 09:50:21 +00:00
Daniel Stenberg
cde5e35d9b Fixed CURLOPT_FAILONERROR to return CURLE_HTTP_RETURNED_ERROR even for the
case when 401 or 407 are returned, *IF* no auth credentials have been given.
The CURLOPT_FAILONERROR option is not possible to make fool-proof for 401
and 407 cases when auth credentials is given, but we've now covered this
somewhat more.

You might get some amounts of headers transferred before this situation is
detected, like for when a "100-continue" is received as a response to a
POST/PUT and a 401 or 407 is received immediately afterwards.

Added test 281 to verify this change.
2006-10-25 20:40:14 +00:00
Yang Tse
b4700f026b Add project notice and file Id 2006-10-25 09:20:44 +00:00
Yang Tse
d771fa7c48 Compiler warning fix 2006-10-25 08:52:00 +00:00
Yang Tse
384c8f3560 Use curl_global_init() and curl_global_cleanup().
Improve cleanup in case of initialization failure.
2006-10-25 05:59:46 +00:00
Yang Tse
c54a4301ee Abort test if it seems that it would have run forever. This is just to prevent
test hanging and actually is an indication that there's a condition that is
not being properly handled at some point in the library.

Remove a pair of braces and adjust indentation appropriately.
2006-10-24 15:51:42 +00:00
Yang Tse
13e60c55a1 Avoid trying to compare more than strlen bytes. 2006-10-23 19:16:19 +00:00
Dan Fandrich
9b8b1a68f0 30 seconds isn't long enough for this test on a loaded server. 2006-10-23 19:15:14 +00:00
Yang Tse
4ec9316155 Replace is*() macros with our own IS*() ones. 2006-10-23 19:14:54 +00:00
Daniel Stenberg
90933ac660 rely on the global LDADD instead of having specific ones for every program 2006-10-21 13:00:51 +00:00
Daniel Stenberg
deb81b2ad4 Nir Soffer made the tests/libtest/Makefile.am use a proper variable for all
the single test applications' link and dependences, so that you easier can
override those from the command line when using make.
2006-10-21 11:40:04 +00:00
Daniel Stenberg
4e717cdb30 Armel Asselin separated CA cert verification problems from problems with
reading the (local) CA cert file to let users easier pinpoint the actual
problem. CURLE_SSL_CACERT_BADFILE (77) is the new libcurl error code.
2006-10-21 11:32:05 +00:00
Yang Tse
33acd6f041 Compiler warning fix 2006-10-21 10:54:41 +00:00
Yang Tse
d997ff6aa8 Oops! Actually set the limit to 30 seconds. 2006-10-20 15:45:12 +00:00
Yang Tse
b9ccecf86e Decrease the posibility of aborting a test which actually is not
stale by replacing loop counters with timeouts. In this way the
main loop of the test will be allowed to run up to 30 seconds on
any platform before aborting it.
2006-10-20 15:39:54 +00:00
Yang Tse
19e07771d1 Set loop2 counter limit to 60 on this test to avoid a false positive. 2006-10-19 23:35:52 +00:00
Yang Tse
ef267ab449 Replace tabs with spaces and Compiler warning fix. 2006-10-19 22:49:33 +00:00
Yang Tse
4f6ed683e8 Compiler warning fix 2006-10-19 22:48:33 +00:00
Yang Tse
c818e7064f When aborting, show loop counter values when more than one counter exists. 2006-10-19 21:12:27 +00:00
Yang Tse
ead6ab2ef7 Abort test if it seems that it would have run forever. This is just to prevent
test hanging and actually is an indication that there's a condition that is
not being properly handled at some point in the library.

Loop counter limits might need to be further increased on false positives.
2006-10-19 17:29:25 +00:00
Yang Tse
5df4be1165 Check for USE_WINSOCK instead of WIN32 where the check was done
to verify winsock API availability.
2006-10-18 21:05:40 +00:00
Daniel Stenberg
b61fbbde46 buildconf already runs ares/buildconf by itself if there is an ares subdir
present, so there's no use to doing it again in this script!
2006-10-17 11:46:42 +00:00
Yang Tse
e150150d9f Remove redundant __CYGWIN__ symbol check 2006-10-11 16:01:16 +00:00
Yang Tse
943f0733bb Compiler warning fix 2006-10-10 23:58:02 +00:00
Yang Tse
8274447dd9 Call curl_global_cleanup() in all code paths before exiting test 2006-10-10 23:50:37 +00:00
Daniel Stenberg
cbcdd337aa Added test case 536 in an attempt to add Bogdan Nicula's problematic case
with multi interface and pipelining. This test just works and did not repeat
the problem his test code showed, but could still serve as a useful test.
2006-10-09 21:29:53 +00:00
Daniel Stenberg
c144adf77c used for test 535 too 2006-10-09 21:26:09 +00:00
Yang Tse
15e3dfe1d3 Compiler warning fix 2006-10-09 11:21:40 +00:00
Daniel Stenberg
a1de9367ec Bogdan Nicula's second test case (posted Sun, 08 Oct 2006) converted to test
case 535 and it now runs fine. Again a problem with the pipelining code not
taking all possible (error) conditions into account.
2006-10-09 06:58:05 +00:00
Daniel Stenberg
2ad7fcbc2f test 534 added in an attempt to repeat Bogdan Nicula's bug... 2006-10-08 10:51:53 +00:00
Daniel Stenberg
2c62dfd124 modified lib533 to accept both URLs on the command line 2006-10-08 08:50:12 +00:00
Daniel Stenberg
ef66497a0d Fix a "sockfilt" leak. When a new 'data' connection sockfilt server is started,
make sure that a previously used one is killed first (since they re-use the
same .pid file etc)
2006-10-08 08:43:32 +00:00
Daniel Stenberg
befc30bc55 Bogdan Nicula's hanging test case was converted to test case 533 and the test
now runs fine.
2006-10-06 21:19:57 +00:00
Daniel Stenberg
ca5846cde9 catch silly mistakes better 2006-10-06 21:19:40 +00:00
Daniel Stenberg
552b963e6d Dmitriy Sergeyev provided an example source code that crashed CVS libcurl
but that worked nicely in 7.15.5. I converted it into test case 532 and
fixed the problem.
2006-10-04 21:11:08 +00:00
Daniel Stenberg
5e0d9aea32 Support for FTP third party transfers is now dropped 2006-09-30 20:31:11 +00:00
Daniel Stenberg
ae13c93b7d Reported in #1561470 (http://curl.haxx.se/bug/view.cgi?id=1561470), libcurl
would crash if a bad function sequence was used when shutting down after
using the multi interface (i.e using easy_cleanup after multi_cleanup) so
precautions have been added to make sure it doesn't any more - test case 529
was added to verify.
2006-09-28 21:26:06 +00:00
Daniel Stenberg
68e9f75708 As reported in bug: #1566077 the former URL mentioned in the generated cookie
jar has died and we now instead point out our own version of that
2006-09-27 21:00:45 +00:00
Daniel Stenberg
f1d707705e allow user in passwd state for test 280 to work (--ftp-alternative-to-user) 2006-09-24 10:30:02 +00:00
Daniel Stenberg
0992e391ba filled in some docs for the FTP server control commands 2006-09-23 20:39:34 +00:00
Daniel Stenberg
b22aaeef6a added simple test of --ftp-alternative-to-user 2006-09-23 20:39:15 +00:00
Daniel Stenberg
e7d90e08b9 Added test case 531 in an attempt to repeat bug report #1561470
(http://curl.haxx.se/bug/view.cgi?id=1561470) that is said to crash when an
FTP upload fails with the multi interface. It did not, but I made a failed
upload still assume the control connection to be fine.
2006-09-21 20:52:20 +00:00
Daniel Stenberg
ec4a16f2e0 Armel Asselin fixed problems when you gave a proxy URL with user name and
empty password or no password at all. Test case 278 and 279 were added to
verify.
2006-09-20 21:49:41 +00:00
Gisle Vanem
56bf97ffc9 'in6addr_any' must be placed in .c-file. Added 'REAL_WIN32' for
all Win32 targets except CygWin. Cleanup.
2006-09-13 13:41:53 +00:00
Daniel Stenberg
e55d4fd5c1 nicer reporting of disabled tests 2006-09-13 10:48:03 +00:00
Daniel Stenberg
5ee231415f added CVS id and clarified the comment lines 2006-09-13 10:18:01 +00:00
Daniel Stenberg
c866771cd2 Added a generic way to disable test cases when "all" is run, and added the
FTP 3rd party transfers to that file for now until I have them sorted out.
2006-09-13 10:16:36 +00:00
Yang Tse
5a6c89661a Cygwin preprocessor adjustments 2006-09-12 01:17:16 +00:00
Daniel Stenberg
29dc39fce1 - Fixed my breakage from earlier today so that doing curl_easy_cleanup() on a
handle that is part of a multi handle first removes the handle from the
  stack.

- Added CURLOPT_SSL_SESSIONID_CACHE and --no-sessionid to disable SSL
  session-ID re-use on demand since there obviously are broken servers out
  there that misbehave with session-IDs used.
2006-09-11 17:18:18 +00:00
Gisle Vanem
e134a40208 Added select_test() function to allow selecting on no sockets on
Winsock.
2006-09-10 19:01:04 +00:00
Gisle Vanem
145084b699 Print usage in case 'arg2 == NULL'. 2006-09-09 16:55:21 +00:00
Daniel Stenberg
e9160a31e0 removed the comment that isn't valid for this file, just a copy'n paste error 2006-09-08 12:03:55 +00:00
Daniel Stenberg
e3c15fc4b9 test 530 is the first ever HTTP pipelining test for libcurl 2006-09-08 11:56:56 +00:00
Daniel Stenberg
b7eeb6e67f Major overhaul introducing http pipelining support and shared connection
cache within the multi handle.
2006-09-07 21:49:20 +00:00
Daniel Stenberg
a932803eac Invoke memanalyze from the source path and hush up about killing the FTP
server as part of test cases
2006-09-06 10:03:34 +00:00
Daniel Stenberg
dc9f154823 added missing test 2006-08-31 22:18:08 +00:00
Dan Fandrich
cd6c58216a Use /usr/bin/env to invoke perl like the other test scripts. 2006-08-23 21:20:00 +00:00
Daniel Stenberg
cfdcae4bc7 Based on a patch by Armel Asselin, the FTP code no longer re-issues the TYPE
command on subsequent requests on a re-used connection unless it has to.
2006-08-19 21:18:36 +00:00
Daniel Stenberg
490cccba3c Andrew Biggs pointed out a "Expect: 100-continue" flaw where libcurl didn't
send the whole request at once, even though the Expect: header was disabled
by the application. An effect of this change is also that small (< 1024
bytes) POSTs are now always sent without Expect: header since we deem it
more costly to bother about that than the risk that we send the data in
vain.
2006-08-18 22:54:57 +00:00
Yang Tse
ee3514ccdc Replace exit() with return() in main() 2006-08-14 17:00:08 +00:00
Yang Tse
b33f47804d Allow again proper compilation outside of the source tree 2006-08-07 18:06:37 +00:00
Yang Tse
aa791ee5cf Fix compiler warnings. 2006-07-29 09:15:03 +00:00
Yang Tse
2c81bfead5 Replace send() and recv() with swrite() and sread() macros. 2006-07-28 18:01:23 +00:00
Daniel Stenberg
c10d15aa0f test case 277 - HTTP RFC1867-type formposting with custom Content-Type 2006-07-27 22:44:56 +00:00
Yang Tse
ab4256d53a Abort if unable to write pid file, and close socket when aborting. 2006-07-19 15:28:30 +00:00
Yang Tse
46c5e562bf Abort if unable to write pid file. 2006-07-19 15:26:28 +00:00
Yang Tse
42f5a90d09 -Use curl_socket_t instead of int.
-Log errno in message if setsockopt() fails.

-Close listener socket on major errors.
2006-07-17 22:44:40 +00:00
Yang Tse
431c4bd6e3 tests/libtest/lib506.c version 1.11 is now also logging CURLSHOPT_LOCKFUNC, CURLSHOPT_UNLOCKFUNC and CURLSHOPT_USERDATA, so we now also have to check them here. 2006-07-17 16:47:07 +00:00
Yang Tse
773bec5ae5 Fix compiler warning "enumerated type mixed with another type" 2006-07-17 14:32:19 +00:00