#
# 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>
12
</errorcode>
<upload>
</upload>
</verify>
</testcase>
