<testcase>
<info>
<keywords>
FTP
RETR
</keywords>
</info>

# Server-side
<reply>
<data nocheck="yes">
fooo
mooo
</data>
</reply>

# Client-side
<client>
# this relies on the debug feature to allow us to set directory to store the
# -O output in, using the CURL_TESTDIR variable
<features>
debug
</features>
<server>
ftp
</server>
<name>
FTP download, file without C-D inside, using -O -i -D stdout
</name>
<setenv>
CURL_TESTDIR=%PWD/log
</setenv>
<command option="no-output,no-include">
ftp://%HOSTIP:%FTPPORT/path/file1354 -O -i -D -
</command>
</client>

# Verify data after the test has been "shot"
<verify>
<protocol>
USER anonymous
PASS ftp@example.com
PWD
CWD path
EPSV
TYPE I
SIZE file1354
RETR file1354
QUIT
</protocol>

<file1 name="log/file1354">
fooo
mooo
</file1>

<file2 name="log/stdout1354">
220-        _   _ ____  _     
220-    ___| | | |  _ \| |    
220-   / __| | | | |_) | |    
220-  | (__| |_| |  _ {| |___ 
220    \___|\___/|_| \_\_____|
331 We are happy you popped in!
230 Welcome you silly person
257 "/" is current directory
250 CWD command successful.
229 Entering Passive Mode (stripped)
200 I modify TYPE as you wanted
213 10
150 Binary data connection for 1354 () (10 bytes).
226 File transfer complete
</file2>
<stripfile2>
s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/
</stripfile2>

</verify>
</testcase>
