diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/data/DISABLED | 9 | ||||
| -rw-r--r-- | tests/data/Makefile.am | 7 | ||||
| -rw-r--r-- | tests/data/test1206 | 53 | ||||
| -rw-r--r-- | tests/data/test1207 | 53 | ||||
| -rw-r--r-- | tests/data/test1208 | 53 | ||||
| -rw-r--r-- | tests/data/test1209 | 53 | ||||
| -rw-r--r-- | tests/data/test591 (renamed from tests/data/test589) | 24 | ||||
| -rw-r--r-- | tests/data/test592 | 72 | ||||
| -rw-r--r-- | tests/data/test593 | 72 | ||||
| -rw-r--r-- | tests/data/test594 | 72 | ||||
| -rw-r--r-- | tests/libtest/Makefile.inc | 8 | ||||
| -rw-r--r-- | tests/libtest/lib591.c (renamed from tests/libtest/lib589.c) | 9 | 
12 files changed, 465 insertions, 20 deletions
| diff --git a/tests/data/DISABLED b/tests/data/DISABLED index db9bc6eb2..b0637dcbe 100644 --- a/tests/data/DISABLED +++ b/tests/data/DISABLED @@ -3,4 +3,11 @@  # per line.  # Lines starting with '#' letters are treated as comments.  811 -589 +591 +592 +593 +594 +1206 +1207 +1208 +1209 diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index ff6c1d3f8..fdfa75547 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -47,8 +47,8 @@ test542 test543 test544 test545 test546 test547 test548 test549 test550	\  test551 test552 test553 test554 test555 test556 test557 test560 test561	\  test562 test563 test564 test565 test566 test567 test568 test569 test570	\  test571 test572 test573 test574 test575 test576 test578 test579 test580	\ -test581 test582 test583 test584 test585 test586 test587 test588 test589 \ -test590 \ +test581 test582 test583 test584 test585 test586 test587 test588 test590 \ +test591 test592 test593 test594 \  test600 test601 test602 test603 test604	\  test605 test606 test607 test608 test609 test610 test611 test612 test613	\  test614 test615 test616 test617 test618 test619 test620 test621 test622	\ @@ -75,7 +75,8 @@ test1102 test1103 test1104 test1105 test1106 test1107 test1108 test1109	\  test1110 test1111 test1112 test1113 test1114 test1115 test1116 test1117	\  test1118 test1119 test1120 test1121 test1122 test1123 test1124 test1125	\  test1126 test1127 test1128 test1129 test1130 test1131 \ -test1200 test1201 test1202 test1203 test1204 test1205 \ +test1200 test1201 test1202 test1203 test1204 test1205 test1206 test1207 \ +test1208 test1209 \  test1300 test1301 test1302 test1303 test1304 test1305	\  test1306 test1307 test1308 test1309 test1310 test1311 test1312 test1313 \  test1314 \ diff --git a/tests/data/test1206 b/tests/data/test1206 new file mode 100644 index 000000000..862c4bdf4 --- /dev/null +++ b/tests/data/test1206 @@ -0,0 +1,53 @@ +<testcase> +<info> +<keywords> +FTP +PORT +RETR +NODATACONN425 +</keywords> +</info> +# Server-side +<reply> +<data nocheck="yes"> +some bytes +</data> +<servercmd> +NODATACONN425 +</servercmd> +</reply> + +# Client-side +<client> +<server> +ftp +</server> + <name> +FTP PORT and 425 on download + </name> + <command> +--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1206 -P - +</command> + +</client> + +# Verify data after the test has been "shot" +<verify> +<strippart> +s/^EPRT \|1\|(.*)/EPRT \|1\|/ +</strippart> +<protocol> +USER anonymous
 +PASS ftp@example.com
 +PWD
 +EPRT |1| +TYPE I
 +SIZE 1206
 +RETR 1206
 +QUIT
 +</protocol> +<errorcode> +19 +</errorcode> +</verify> +</testcase> diff --git a/tests/data/test1207 b/tests/data/test1207 new file mode 100644 index 000000000..acc6427b7 --- /dev/null +++ b/tests/data/test1207 @@ -0,0 +1,53 @@ +<testcase> +<info> +<keywords> +FTP +PORT +RETR +NODATACONN421 +</keywords> +</info> +# Server-side +<reply> +<data nocheck="yes"> +some bytes +</data> +<servercmd> +NODATACONN421 +</servercmd> +</reply> + +# Client-side +<client> +<server> +ftp +</server> + <name> +FTP PORT and 421 on download + </name> + <command> +--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1207 -P - +</command> + +</client> + +# Verify data after the test has been "shot" +<verify> +<strippart> +s/^EPRT \|1\|(.*)/EPRT \|1\|/ +</strippart> +<protocol> +USER anonymous
 +PASS ftp@example.com
 +PWD
 +EPRT |1| +TYPE I
 +SIZE 1207
 +RETR 1207
 +QUIT
 +</protocol> +<errorcode> +19 +</errorcode> +</verify> +</testcase> diff --git a/tests/data/test1208 b/tests/data/test1208 new file mode 100644 index 000000000..7a81eecd9 --- /dev/null +++ b/tests/data/test1208 @@ -0,0 +1,53 @@ +<testcase> +<info> +<keywords> +FTP +PORT +RETR +NODATACONN150 +</keywords> +</info> +# Server-side +<reply> +<data nocheck="yes"> +some bytes +</data> +<servercmd> +NODATACONN150 +</servercmd> +</reply> + +# Client-side +<client> +<server> +ftp +</server> + <name> +FTP PORT download, no data conn and no transient negative reply + </name> + <command> +--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1208 -P - +</command> + +</client> + +# Verify data after the test has been "shot" +<verify> +<strippart> +s/^EPRT \|1\|(.*)/EPRT \|1\|/ +</strippart> +<protocol> +USER anonymous
 +PASS ftp@example.com
 +PWD
 +EPRT |1| +TYPE I
 +SIZE 1208
 +RETR 1208
 +QUIT
 +</protocol> +<errorcode> +19 +</errorcode> +</verify> +</testcase> diff --git a/tests/data/test1209 b/tests/data/test1209 new file mode 100644 index 000000000..a106f09cf --- /dev/null +++ b/tests/data/test1209 @@ -0,0 +1,53 @@ +<testcase> +<info> +<keywords> +FTP +PORT +RETR +NODATACONN +</keywords> +</info> +# Server-side +<reply> +<data nocheck="yes"> +some bytes +</data> +<servercmd> +NODATACONN +</servercmd> +</reply> + +# Client-side +<client> +<server> +ftp +</server> + <name> +FTP PORT download, no data conn and no positive preliminary reply + </name> + <command> +--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1209 -P - +</command> + +</client> + +# Verify data after the test has been "shot" +<verify> +<strippart> +s/^EPRT \|1\|(.*)/EPRT \|1\|/ +</strippart> +<protocol> +USER anonymous
 +PASS ftp@example.com
 +PWD
 +EPRT |1| +TYPE I
 +SIZE 1209
 +RETR 1209
 +QUIT
 +</protocol> +<errorcode> +19 +</errorcode> +</verify> +</testcase> diff --git a/tests/data/test589 b/tests/data/test591 index 29cb97217..0d4bac7dd 100644 --- a/tests/data/test589 +++ b/tests/data/test591 @@ -1,6 +1,7 @@  # -# For this test the server rejects the EPRT command -# and code in lib589 makes use of curl_multi_timeout() +# For this test the server rejects the EPRT command, +# code in lib591 makes use of curl_multi_timeout() +# and server does not establish data connection.  #  <testcase>  <info> @@ -10,6 +11,7 @@ PORT  STOR  multi  EPRT refused +NODATACONN425  </keywords>  </info> @@ -18,6 +20,7 @@ EPRT refused  <data>  </data>  <servercmd> +NODATACONN425  REPLY EPRT 500 we don't like EPRT now  </servercmd>  </reply> @@ -28,16 +31,16 @@ REPLY EPRT 500 we don't like EPRT now  ftp  </server>  <tool> -lib589 +lib591  </tool>   <name> -FTP PORT upload using multi interface timeout, EPRT doesn't work +FTP multi PORT and 425 on upload   </name>   <command> -ftp://%HOSTIP:%FTPPORT/path/589 log/upload589 +ftp://%HOSTIP:%FTPPORT/path/591 %FTPTIME2 log/upload591  </command> -<file name="log/upload589"> -Moooooooooooo for 589 +<file name="log/upload591"> +Moooooooooooo for 591   upload this  </file>  </client> @@ -57,12 +60,13 @@ CWD path  EPRT |1|  PORT  TYPE I
 -STOR 589
 +STOR 591
  QUIT
  </protocol> +<errorcode> +28 +</errorcode>  <upload> -Moooooooooooo for 589 - upload this  </upload>  </verify>  </testcase> diff --git a/tests/data/test592 b/tests/data/test592 new file mode 100644 index 000000000..4af04e31c --- /dev/null +++ b/tests/data/test592 @@ -0,0 +1,72 @@ +# +# For this test the server rejects the EPRT command, +# code in lib591 makes use of curl_multi_timeout() +# and server does not establish data connection. +# +<testcase> +<info> +<keywords> +FTP +PORT +STOR +multi +EPRT refused +NODATACONN421 +</keywords> +</info> + +# Server-side +<reply> +<data> +</data> +<servercmd> +NODATACONN421 +REPLY EPRT 500 we don't like EPRT now +</servercmd> +</reply> + +# Client-side +<client> +<server> +ftp +</server> +<tool> +lib591 +</tool> + <name> +FTP multi PORT and 421 on upload + </name> + <command> +ftp://%HOSTIP:%FTPPORT/path/592 %FTPTIME2 log/upload592 +</command> +<file name="log/upload592"> +Moooooooooooo for 592 + upload this +</file> +</client> + +# Verify data after the test has been "shot" +<verify> +# Strip off parts of the PORT and EPRT commands that might differ +<strippart> +s/^PORT (.*)/PORT/ +s/^EPRT \|1\|(.*)/EPRT \|1\|/ +</strippart> +<protocol> +USER anonymous
 +PASS ftp@example.com
 +PWD
 +CWD path
 +EPRT |1| +PORT +TYPE I
 +STOR 592
 +QUIT
 +</protocol> +<errorcode> +28 +</errorcode> +<upload> +</upload> +</verify> +</testcase> diff --git a/tests/data/test593 b/tests/data/test593 new file mode 100644 index 000000000..811bf93c6 --- /dev/null +++ b/tests/data/test593 @@ -0,0 +1,72 @@ +# +# For this test the server rejects the EPRT command, +# code in lib591 makes use of curl_multi_timeout() +# and server does not establish data connection. +# +<testcase> +<info> +<keywords> +FTP +PORT +STOR +multi +EPRT refused +NODATACONN150 +</keywords> +</info> + +# Server-side +<reply> +<data> +</data> +<servercmd> +NODATACONN150 +REPLY EPRT 500 we don't like EPRT now +</servercmd> +</reply> + +# Client-side +<client> +<server> +ftp +</server> +<tool> +lib591 +</tool> + <name> +FTP multi PORT upload, no data conn and no transient neg. reply + </name> + <command> +ftp://%HOSTIP:%FTPPORT/path/593 %FTPTIME2 log/upload593 +</command> +<file name="log/upload593"> +Moooooooooooo for 593 + upload this +</file> +</client> + +# Verify data after the test has been "shot" +<verify> +# Strip off parts of the PORT and EPRT commands that might differ +<strippart> +s/^PORT (.*)/PORT/ +s/^EPRT \|1\|(.*)/EPRT \|1\|/ +</strippart> +<protocol> +USER anonymous
 +PASS ftp@example.com
 +PWD
 +CWD path
 +EPRT |1| +PORT +TYPE I
 +STOR 593
 +QUIT
 +</protocol> +<errorcode> +28 +</errorcode> +<upload> +</upload> +</verify> +</testcase> diff --git a/tests/data/test594 b/tests/data/test594 new file mode 100644 index 000000000..77b5864d7 --- /dev/null +++ b/tests/data/test594 @@ -0,0 +1,72 @@ +# +# For this test the server rejects the EPRT command, +# code in lib591 makes use of curl_multi_timeout() +# and server does not establish data connection. +# +<testcase> +<info> +<keywords> +FTP +PORT +STOR +multi +EPRT refused +NODATACONN +</keywords> +</info> + +# Server-side +<reply> +<data> +</data> +<servercmd> +NODATACONN +REPLY EPRT 500 we don't like EPRT now +</servercmd> +</reply> + +# Client-side +<client> +<server> +ftp +</server> +<tool> +lib591 +</tool> + <name> +FTP multi PORT upload, no data conn and no positive prelim. reply + </name> + <command> +ftp://%HOSTIP:%FTPPORT/path/594 %FTPTIME2 log/upload594 +</command> +<file name="log/upload594"> +Moooooooooooo for 594 + upload this +</file> +</client> + +# Verify data after the test has been "shot" +<verify> +# Strip off parts of the PORT and EPRT commands that might differ +<strippart> +s/^PORT (.*)/PORT/ +s/^EPRT \|1\|(.*)/EPRT \|1\|/ +</strippart> +<protocol> +USER anonymous
 +PASS ftp@example.com
 +PWD
 +CWD path
 +EPRT |1| +PORT +TYPE I
 +STOR 594
 +QUIT
 +</protocol> +<errorcode> +28 +</errorcode> +<upload> +</upload> +</verify> +</testcase> diff --git a/tests/libtest/Makefile.inc b/tests/libtest/Makefile.inc index 86e5e9999..4a7f78cf2 100644 --- a/tests/libtest/Makefile.inc +++ b/tests/libtest/Makefile.inc @@ -15,8 +15,8 @@ noinst_PROGRAMS = chkhostname \    lib579 lib529 lib530 lib532 lib533 lib536 lib537 lib540 lib541 lib542	\    lib543 lib544 lib545 lib547 lib548 lib549 lib552 lib553 lib554 lib555	\    lib556 lib539 lib557 lib560 lib562 lib564 lib565 lib566 lib567 lib568	\ -  lib569 lib570 lib571 lib572 lib573 lib582 lib583 lib585 lib587 lib589 \ -  lib590 +  lib569 lib570 lib571 lib572 lib573 lib582 lib583 lib585 lib587 lib590 \ +  lib591  chkhostname_SOURCES = chkhostname.c $(top_srcdir)/lib/curl_gethostname.c  chkhostname_LDADD = @CURL_NETWORK_LIBS@ @@ -171,6 +171,6 @@ lib585_CPPFLAGS = $(AM_CPPFLAGS) -DLIB585  lib587_SOURCES = lib554.c $(SUPPORTFILES)  lib587_CPPFLAGS = $(AM_CPPFLAGS) -DLIB587 -lib589_SOURCES = lib589.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS) -  lib590_SOURCES = lib590.c $(SUPPORTFILES) + +lib591_SOURCES = lib591.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS) diff --git a/tests/libtest/lib589.c b/tests/libtest/lib591.c index 9ce36ed15..101f2db26 100644 --- a/tests/libtest/lib589.c +++ b/tests/libtest/lib591.c @@ -21,6 +21,8 @@   ***************************************************************************/  #include "test.h" +/* lib591 is used for test cases 591, 592, 593 and 594 */ +  #include <fcntl.h>  #include "testutil.h" @@ -42,12 +44,12 @@ int test(char *URL)    start_test_timing(); -  upload = fopen(libtest_arg2, "rb"); +  upload = fopen(libtest_arg3, "rb");    if(!upload) {      error = ERRNO;      fprintf(stderr, "fopen() failed with error: %d (%s)\n",              error, strerror(error)); -    fprintf(stderr, "Error opening file: (%s)\n", libtest_arg2); +    fprintf(stderr, "Error opening file: (%s)\n", libtest_arg3);      return TEST_ERR_FOPEN;    } @@ -74,6 +76,9 @@ int test(char *URL)    /* use active mode FTP */    easy_setopt(easy, CURLOPT_FTPPORT, "-"); +  /* server connection timeout */ +  easy_setopt(easy, CURLOPT_CONNECTTIMEOUT, strtol(libtest_arg2, NULL, 10)); +    multi_init(multi);    multi_add_handle(multi, easy); | 
