test 588: verify active FTP with multi interface without EPRT
authorDaniel Stenberg <daniel@haxx.se>
Mon, 24 Oct 2011 21:08:16 +0000 (23:08 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 24 Oct 2011 21:08:16 +0000 (23:08 +0200)
This is using the verbatim 525 test code but it disables EPRT in the
server and this should work just as well anyway.

tests/data/Makefile.am
tests/data/test588 [new file with mode: 0644]

index 7626e31..cf434bf 100644 (file)
@@ -47,7 +47,7 @@ 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 \
+test581 test582 test583 test584 test585 test586 test588 \
 test600 test601 test602 test603 test604        \
 test605 test606 test607 test608 test609 test610 test611 test612 test613        \
 test614 test615 test616 test617 test618 test619 test620 test621 test622        \
diff --git a/tests/data/test588 b/tests/data/test588
new file mode 100644 (file)
index 0000000..0515b52
--- /dev/null
@@ -0,0 +1,69 @@
+#
+# This test is exactly like 525 but the server rejects the EPRT command.
+# Written up to make sure that there's nothing in the multi interface
+# active connection case that differs between PORT and EPRT use
+#
+<testcase>
+<info>
+<keywords>
+FTP
+PORT
+STOR
+multi
+EPRT refused
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+<servercmd>
+REPLY EPRT 500 we don't like EPRT now
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+<tool>
+lib525
+</tool>
+ <name>
+FTP PORT upload using multi interface, EPRT doesn't work
+ </name>
+ <command>
+ftp://%HOSTIP:%FTPPORT/path/588 log/upload588
+</command>
+<file name="log/upload588">
+Moooooooooooo
+ 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\r
+PASS ftp@example.com\r
+PWD\r
+CWD path\r
+EPRT |1|
+PORT
+TYPE I\r
+STOR 588\r
+QUIT\r
+</protocol>
+<upload>
+Moooooooooooo
+ upload this
+</upload>
+</verify>
+</testcase>