Commit Graph

432 Commits

Author SHA1 Message Date
Chris Conroy
1ac168e576 Fix RTSP GET_PARAMETER empty and non-empty operation.
Test coverage included. Thanks to Massimo Callegari for the bug report
2010-03-24 13:21:14 +01:00
Patrick Monnerat
338553eda3 - Proper handling of STARTTLS on SMTP, taking CURLUSESSL_TRY into account.
- SMTP falls back to RFC821 HELO when EHLO fails (and SSL is not required).
- Use of true local host name (i.e.: via gethostname()) when available, as default argument to SMTP HELO/EHLO.
- Test case 804 for HELO fallback.
2010-02-22 12:41:02 +00:00
Yang Tse
6259bcd51f Chris Conroy provided first RTSP tests 2010-01-28 04:58:03 +00:00
Daniel Stenberg
a5ca3f1754 - David McCreedy brought a fix and a new test case (129) to make libcurl work
again when downloading files over FTP using ASCII and it turns out that the
  final size of the file is not the same as the initial size the server
  reported. This is very common since servers don't take the newline
  conversions into account.
2010-01-19 21:39:10 +00:00
Yang Tse
0643829444 Added test case #1112 which does an FTPS download with strict timeout
and slow data transfer in a similar way as test case #1086 does for FTP.

This also exercises <killserver> section for the FTPS server.
2010-01-12 22:29:18 +00:00
Daniel Stenberg
78b7d7f7a8 - The tests/runtests.pl script now checks to see if the test case that runs is
present in the tests/data/Makefile.am and outputs a notice message on the
  screen if not. Each test file has to be included in that Makefile.am to get
  included in release archives and forgetting to add files there is a common
  mistake. This is an attempt to make it harder to forget.
2010-01-11 15:50:30 +00:00
Claes Jakobsson
31630203b1 List fragment tests in Makefile.am and better provide better names 2010-01-07 14:44:04 +00:00
Daniel Stenberg
605bbfc4c0 - Ingmar Runge enhanced libcurl's FTP engine to support the PRET command. This
command is a special "hack" used by the drftpd server, but even though it is
  a custom extension I've deemed it fine to add to libcurl since this server
  seems to survive and people keep using it and want libcurl to support
  it. The new libcurl option is named CURLOPT_FTP_USE_PRET, and it is also
  usable from the curl tool with --ftp-pret. Using this option on a server
  that doesn't support this command will make libcurl fail.
2010-01-01 14:44:44 +00:00
Daniel Stenberg
5e6ffe353a (SMTP) support DATA better in the server and make sure to "escape" CRLF.CRLF
sequences in uploaded data. The test server doesn't "decode" escaped dot-lines
but instead test cases must be written to take them into account. Added test
case 803 to verify dot-escaping.
2009-12-30 21:52:27 +00:00
Daniel Stenberg
7cd5ffc1bf test 802 is the first SMTP test, although not strictly SMTP yet... 2009-12-29 21:28:53 +00:00
Daniel Stenberg
982fe33924 test 566 was missing 2009-12-21 14:51:07 +00:00
Daniel Stenberg
2a3dafc0cd introducing the first IMAP FETCH test 2009-12-20 11:07:04 +00:00
Daniel Stenberg
3111701c38 - Jon Nelson found a regression that turned out to be a flaw in how libcurl
detects and uses proxies based on the environment variables. If the proxy
  was given as an explicit option it worked, but due to the setup order
  mistake proxies would not be used fine for a few protocols when picked up
  from '[protocol]_proxy'. Obviously this broke after 7.19.4. I now also added
  test case 1106 that verifies this functionality.

  (http://curl.haxx.se/bug/view.cgi?id=2913886)
2009-12-14 23:16:09 +00:00
Daniel Stenberg
ec3bb8f727 introducing IMAP, POP3 and SMTP support (still lots of polish left to do) 2009-12-12 21:54:01 +00:00
Daniel Stenberg
d68f215f03 - "Tom" posted a bug report that mentioned how libcurl did wrong when doing a
POST using a read callback, with Digest authentication and
  "Transfer-Encoding: chunked" enforced.  I would then cause the first request
  to be wrongly sent and then basically hang until the server closed the
  connection. I fixed the problem and added test case 565 to verify it.
2009-10-30 22:24:48 +00:00
Daniel Stenberg
8d39a31e89 added test 1105 (disabled) - it repeats a cookie path bug we need to fix 2009-09-26 11:46:41 +00:00
Daniel Stenberg
0fdb77d643 added three missing files to the dist archive 2009-09-17 17:38:25 +00:00
Dan Fandrich
beb0a345ac Renumbered test565 to test1104 to move it out of the range reserved for
libcurl tests.
2009-09-11 20:19:43 +00:00
Daniel Stenberg
7ff4b4f2b5 - Claes Jakobsson fixed a problem with cookie expiry dates at exctly the epoch
start second "Thu Jan 1 00:00:00 GMT 1970" as the date parser then returns 0
  which internally then is treated as a session cookie. That particular date
  is now made to get the value of 1.
2009-09-10 21:06:50 +00:00
Patrick Monnerat
b0b2824b58 - Introduced a SYST-based test to properly set-up name format when dealing with the OS/400 FTP server.
- Fixed an ftp_readresp() bug preventing detection of failing control socket  and causing FTP client to loop forever.
2009-08-24 12:57:25 +00:00
Daniel Stenberg
3cb06eb2b2 - James Bursa posted a patch to the mailing list that fixed a problem with
no_proxy which made it not skip the proxy if the URL entered contained a
  user name. I added test case 1101 to verify.
2009-05-17 14:47:50 +00:00
Daniel Stenberg
e6e6c6e635 Added test 564 as DISABLED. It is for testing FTP over a SOCK4 proxy using
the multi interface, which currently doesn't work because of how the data
connection is not waiting for connect before it tries to do proxy magic.
2009-05-11 11:43:55 +00:00
Daniel Stenberg
e6f84b8cc8 Added test 1100 - "HTTP POST with NTLM authorization and following a 302
redirect" doesn't work, seems to repeat what Ebenezer Ikonne (on curl-users)
and Laurent Rabret (on curl-library) have reported. Disabled for now.
2009-05-10 22:10:13 +00:00
Dan Fandrich
8119379d4f Added and disabled test case 563 which shows KNOWN_BUGS #59. The bug
report failed to mention that a proxy must be used to reproduce it.
2009-05-03 19:25:17 +00:00
Daniel Stenberg
082b0d822c test 1099: "TFTP get first a non-existing file then an existing" added disabled
as things don't work right here!
2009-04-24 21:46:42 +00:00
Daniel Stenberg
30f7a2ff20 - Pramod Sharma reported and tracked down a bug when doing FTP over a HTTP
proxy. libcurl would then wrongly close the connection after each
  request. In his case it had the weird side-effect that it killed NTLM auth
  for the proxy causing an inifinite loop!

  I added test case 1098 to verify this fix. The test case does however not
  properly verify that the transfers are done persistently - as I couldn't
  think of a clever way to achieve it right now - but you need to read the
  stderr output after a test run to see that it truly did the right thing.
2009-04-17 12:48:24 +00:00
Daniel Stenberg
7f22da5230 verify that a 550-response for a RETR returns 78 but also that the control
connection is kept alive afterwards
2009-02-19 13:47:06 +00:00
Daniel Stenberg
82ca52713b - Alexey Borzov filed bug report #2535504
(http://curl.haxx.se/bug/view.cgi?id=2535504) pointing out that realms with
  quoted quotation marks in HTTP Digest headers didn't work. I've now added
  test case 1095 that verifies my fix.
2009-01-26 13:19:03 +00:00
Dan Fandrich
5591550167 Fixed a couple more locale-dependent toupper conversions, mainly for
clarity.  This does fix one problem that causes ;type=i FTP URLs
to fail in the Turkish locale when CURLOPT_PROXY_TRANSFER_MODE is
used (test case 561)

Added tests 561 and 1092 through 1094 to test various combinations
of ;type= and ;mode= URLs that could potentially fail in the Turkish
locale.
2009-01-21 04:42:47 +00:00
Dan Fandrich
01d6133bd7 Added test cases 1089 and 1090 to test --write-out after a redirect to
test a report that the size didn't work, but these test cases pass.
2008-12-09 21:59:57 +00:00
Dan Fandrich
ecc6f550eb Added tests 1087 and 1088 to test Basic authentication on a redirect
with and without --location-trusted
2008-11-25 23:30:53 +00:00
Dan Fandrich
2903a5c050 Added test 1086 to test a timeout the occurs during an FTP data transfer. 2008-11-06 00:13:18 +00:00
Yang Tse
92f3b3895e test #558 tests internal hash create/destroy
test #559 tests internal hash create/add/destroy
2008-10-27 20:01:58 +00:00
Yang Tse
6db8f53445 test #558 verifies loop operation using malloc() and free() 2008-10-26 03:03:29 +00:00
Dan Fandrich
f6d80d66a2 Added tests 633 through 637 to test the new file range support for SFTP.
All but the first test cause an infinite loop or other failure and so
are added to DISABLED.
2008-10-09 05:16:06 +00:00
Dan Fandrich
8dfddd279b Added tests 1082 through 1085 to test symbolic --interface parameters 2008-10-08 21:46:55 +00:00
Dan Fandrich
11a8a25528 Created test cases 1080 and 1081 to reproduce a problem of
CURLINFO_REDIRECT_URL leaking memory and returning incorrect results when
two URLs are requested. Reported by vmpdemo in bug #2152270
2008-10-08 03:32:10 +00:00
Dan Fandrich
b9ce871463 Changed the handling of read/write errors in Curl_perform() to allow a
a fresh connection to be made in such cases and the request retransmitted.
This should fix test case 160.  Added test case 1079 in an attempt to
test a similar connection dropping scenario, but as a race condition, it's
hard to test reliably.
2008-10-07 23:15:02 +00:00
Dan Fandrich
c3d871aef4 Added HTTP 1.0 downgrade tests with proxies 2008-09-06 18:24:04 +00:00
Daniel Stenberg
18110b519c - Martin Drasar provided the CURLOPT_POSTREDIR patch. It renames
CURLOPT_POST301 (but adds a define for backwards compatibility for you who
  don't define CURL_NO_OLDIES). This option allows you to now also change the
  libcurl behavior for a HTTP response 302 after a POST to not use GET in the
  subsequent request (when CURLOPT_FOLLOWLOCATION is enabled). I edited the
  patch somewhat before commit. The curl tool got a matching --post302
  option. Test case 1076 was added to verify this.
2008-09-05 16:13:20 +00:00
Dan Fandrich
85a79f9d67 Added tests 1071 through 1074 to test automatic downgrading from HTTP 1.1
to HTTP 1.0 upon receiving a response from the HTTP server.  Tests 1072
and 1073 are similar to test 1069 in that they involve the impossible
scenario of sending chunked data to a HTTP 1.0 server.  All these currently
fail and are added to DISABLED.

Added test 1075 to test --anyauth with Basic authentication.
2008-08-29 23:42:39 +00:00
Daniel Stenberg
d24465b79a test 1070 added 2008-08-29 10:48:27 +00:00
Dan Fandrich
93357ef017 Added test 1069 to test PUT from stdin without content length. It fails
in a similar manner to test 1065 so is added to DISABLED.
2008-08-28 02:18:44 +00:00
Dan Fandrich
753592cc70 Added test case 1068 to do a simple HTTP PUT from stdin 2008-08-28 02:03:54 +00:00
Daniel Stenberg
b34390017b added test case 1067 to verify --referer "firstone.html;auto" 2008-08-23 21:27:58 +00:00
Dan Fandrich
e3ad6d2bd1 Fixed a problem when --dump-header - was given with more than one URL,
which caused an error when the second header was dumped due to stdout
being closed.  Added test case 1066 to verify.  Also fixed a potential
problem where a closed file descriptor might be used for an upload
when more than one URL is given.
2008-08-22 22:57:25 +00:00
Yang Tse
2f71461b29 Added test case 557 to verify libcurl's internal curl_m*printf() functions
formatting functionality when handling signed and unsigned longs, as well as
our curl_off_t data type.
2008-08-18 09:58:08 +00:00
Dan Fandrich
a923d8541c Added test case 1065 to test a PUT with a single file but two URLs. This
was discovered to be problematic while investigating an incident reported by
Von back in May.  curl in this case doesn't include a Content-Length: or
Transfer-Encoding: chunked header which is illegal. This test case is
added to DISABLED until a solution is found.
2008-08-15 19:18:46 +00:00
Dan Fandrich
6e878d2ca4 Added test 1063 to test an invalid large range on a file: 2008-08-14 19:18:01 +00:00
Dan Fandrich
7eab7fa353 Fixed a buffer overflow problem in Curl_proxyCONNECT that could occur
when a server responded with long headers and data.  Luckily, the buffer
overflowed into another unused buffer, so no actual harm was done.
Added test cases 1060 and 1061 to verify.
2008-08-12 20:07:52 +00:00
Dan Fandrich
f1fe04245a Fixed a boundary condition error in ftp_readresp() whereby a non-terminal
line of a multiline FTP response whose last byte landed exactly at the end
of the BUFSIZE-length buffer would be treated as the terminal response
line.  The following response code read in would then actually be the
end of the previous response line, and all responses from then on would
correspond to the wrong command. Test case 1062 verifies this.

Stop closing a never-opened ftp socket.
2008-08-11 23:16:08 +00:00
Dan Fandrich
40b2e06a7f Added test1059 to test the FTP proxy tunnel problem fixed July 11. 2008-08-08 07:26:30 +00:00
Dan Fandrich
f27299dc3b Added tests 1057 and 1058 to test FTP and HTTPS transfers with ranges
relative to end of file.
2008-08-01 22:12:34 +00:00
Dan Fandrich
f3b4071209 Added test of IPv6 scope handling 2008-07-31 02:38:51 +00:00
Dan Fandrich
bc649593e4 Added test cases 1052 through 1055 to test uploading data from files
during redirects.  Test cases 1052 and 1055 show problems (maybe the same
root cause as 1051) and are disabled.
2008-07-30 21:04:44 +00:00
Dan Fandrich
1f26ea4a85 Added test case 1051 to test Location: following with PUT, as reported
by Ben Sutcliffe.  The test when run manually shows a problem in curl,
but the test harness web server doesn't run the test correctly so it's
disabled for now.
2008-07-30 07:24:59 +00:00
Dan Fandrich
adc032e7d8 Return an error code when extra files are found in filecheck: 2008-07-29 18:57:01 +00:00
Dan Fandrich
4ff37a4ed1 Added test case 1050 to test --ftp-port with an IPv6 address.
Made --interface tests less restrictive on host address.
2008-07-29 01:05:28 +00:00
Dan Fandrich
f042a7419d Added test cases 1045 through 1049 as simple tests of --interface using the
localhost interface.
2008-07-28 18:39:32 +00:00
Dan Fandrich
e06944438a Added test 1044 to test large file support in ftp with -I. 2008-07-26 20:09:36 +00:00
Dan Fandrich
aa4a7471dd Added test1042 and test1043 to test -C - on HTTP. 2008-07-15 04:12:15 +00:00
Dan Fandrich
69a03ce23c Added test1040 and test1041 to test -C - on HTTP. Test 1041 failed so it's
added to DISABLED.
2008-07-15 03:36:38 +00:00
Dan Fandrich
8d49a8f278 Added test cases 1038 and 1039 to test Adrian Kreher's report that ftp
uploads with -C - didn't resume properly, but the tests pass.
2008-07-11 05:08:06 +00:00
Dan Fandrich
bbb1b99ce1 Added tests 1036 and 1037 to verify resumed ftp downloads with -C - 2008-07-10 06:09:03 +00:00
Dan Fandrich
a25959184e Added test cases 1034 & 1035 to test IDN name conversion failures. 2008-07-07 23:52:52 +00:00
Daniel Stenberg
82412f218f Phil Blundell provided a fix for libcurl's treatment of unexpected 1xx
response codes. Previously libcurl would hang on such occurances. I added
test case 1033 to verify.
2008-07-03 08:47:53 +00:00
Daniel Stenberg
d92945bb8a - Eduard Bloch filed the debian bug report #487567
(http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=487567) pointing out that
  libcurl used Content-Range: instead of Range when doing a range request with
  --head (CURLOPT_NOBODY). This is now fixed and test case 1032 was added to
  verify.
2008-06-22 20:38:16 +00:00
Dan Fandrich
5304b13365 Added SSH failure test cases 628-632 2008-06-19 00:18:58 +00:00
Daniel Stenberg
f7815fa93c - Bug report #1973352 (http://curl.haxx.se/bug/view.cgi?id=1973352) identified
how the HTTP redirect following code didn't properly follow to a new URL if
  the new url was but a query string such as "Location: ?moo=foo". Test case
  1031 was added to verify this fix.
2008-05-26 20:39:41 +00:00
Daniel Stenberg
7f88e8badb Added test case 556 that uses curl_easy_send() and curl_easy_recv() 2008-05-13 21:42:07 +00:00
Daniel Stenberg
fc9e0d2249 - Ben Van Hof filed bug report #1945240: "libcurl sometimes sends body twice
when using CURL_AUTH_ANY" (http://curl.haxx.se/bug/view.cgi?id=1945240).
  The problem was that when libcurl rewound a stream meant for upload when it
  would prepare for a second request, it could accidentally continue the
  sending of the rewound data on the first request instead of on the second.
  Ben also provided test case 1030 that verifies this fix.
2008-05-03 21:45:12 +00:00
Daniel Stenberg
852989856d - To make it easier for applications that want lots of magic stuff done on
redirections and thus cannot use CURLOPT_FOLLOWLOCATION easily, we now
  introduce the new CURLINFO_REDIRECT_URL option that lets applications
  extract the URL libcurl would've redirected to if it had been told to. This
  then enables the application to continue to that URL as it thinks is
  suitable, without having to re-implement the magic of creating the new URL
  from the Location: header etc. Test 1029 verifies it.
2008-04-30 21:20:08 +00:00
Dan Fandrich
ab71654078 Added test 1028 to test an HTTP redirect to a FTP URL. 2008-04-29 02:30:09 +00:00
Dan Fandrich
7abf50a5c0 Added test cases 1026 and 1027 to do some rudimentary tests on the --manual
and --help options.
2008-04-18 22:31:52 +00:00
Daniel Stenberg
0331071346 Added test case 555, a variation of 547 but using multi interface instead of
easy. This was reported not working by Penugonda Chenna Reddy in
http://curl.haxx.se/mail/lib-2008-04/0046.html but I fail to repeat that
problem.
2008-04-16 21:11:46 +00:00
Dan Fandrich
a9591ad1b7 Added test case 1025 to test a command-line cookie with Location: following 2008-04-10 18:18:55 +00:00
Dan Fandrich
c97d112b30 Added test case 1024 to test a scenario similar to the one reported
by Ben Combee where libcurl would send the wrong cookie to a redirected
server.  libcurl was doing the right thing in this test case.
2008-04-10 04:21:08 +00:00
Daniel Stenberg
ac0b911eda oops, forgot to add test554 2008-04-04 11:39:32 +00:00
Dan Fandrich
10232bfe9e Added test627 to test SFTP with CURLOPT_NOBODY 2008-04-04 02:06:35 +00:00
Dan Fandrich
a57098ea9b Added test 626 to reproduce an infinite loop when given an invalid
SFTP quote command reported by Vincent Le Normand, but left it disabled.
2008-03-18 17:05:29 +00:00
Dan Fandrich
040a4443a1 Added tests 622-625 to test SFTP/SCP uploads. Test 625 was an attempt to
reproduce the --ftp-create-dirs problem reported by Brian Ulm, but that
seems to need a call curl_easy_reset() which this test case doesn't do.
2008-03-13 22:51:39 +00:00
Dan Fandrich
458925ae0b Added tests 618-621 to test SFTP/SCP transfers of more than one file
(test 620 tests the just-fixed problem reported by Brian Ulm).
2008-03-10 19:40:27 +00:00
Dan Fandrich
b16ea66cec Added tests 616 and 617 to see how SFTP and SCP cope with zero-length
files, as questioned by Mike Protts. SFTP does for me but SCP doesn't
so test 617 is disabled for now.
2008-03-06 01:15:28 +00:00
Daniel Stenberg
55700cb01f - We no longer support setting the CURLOPT_URL option from inside a callback
such as the CURLOPT_SSL_CTX_FUNCTION one treat that as if it was a Location:
  following. The patch that introduced this feature was done for 7.11.0, but
  this code and functionality has been broken since about 7.15.4 (March 2006)
  with the introduction of non-blocking OpenSSL "connects".

  It was a hack to begin with and since it doesn't work and hasn't worked
  correctly for a long time and nobody has even noticed, I consider it a very
  suitable subject for plain removal. And so it was done.
2008-02-20 08:28:02 +00:00
Dan Fandrich
0cae201044 Added test309 to test HTTP redirect to HTTPS URL 2008-02-19 21:57:41 +00:00
Dan Fandrich
ce1649564c Added tests 1022 and 1023 to validate output of curl-config --version and
--vernum
2008-02-08 01:21:03 +00:00
Daniel Stenberg
5f2055729e added test 1021 to verify my fix for bug report #1879375 2008-01-26 00:13:38 +00:00
Daniel Stenberg
c522f349fe Added test 553. This test case and code is based on the bug recipe Joe Malicki
provided for bug report #1871269, fixed on Jan 14 2008 before the 7.18.0
release.
2008-01-16 22:54:54 +00:00
Daniel Stenberg
08adf67969 Daniel Egger made CURLOPT_RANGE work on file:// URLs the very same way it
already worked for FTP:// URLs
2008-01-11 14:20:41 +00:00
Daniel Stenberg
f277124a0f In an attempt to repeat the problem in bug report #1850730
(http://curl.haxx.se/bug/view.cgi?id=1850730) I wrote up test case 552. The
test is doing a 70K POST with a read callback and an ioctl callback over a
proxy requiring Digest auth. The test case code is more or less identical to
the test recipe code provided by Spacen Jasset (who submitted the bug report).
2007-12-26 21:48:52 +00:00
Daniel Stenberg
c1730dc50a Add test 551 that tests callback-post over a proxy that requires Digest auth.
A failed attempt to repeat bug report #1850730 (ie the test works fine).
2007-12-15 22:13:07 +00:00
Daniel Stenberg
975812d246 add missing files 2007-12-08 22:56:05 +00:00
Daniel Stenberg
05221e9056 test1015 --data-urlencode 2007-11-26 11:04:21 +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
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
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
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
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