1<testcase>
2<info>
3<keywords>
4FTP
5PORT
6RETR
7NODATACONN
8</keywords>
9</info>
10# Server-side
11<reply>
12<data nocheck="yes">
13some bytes
14</data>
15<servercmd>
16NODATACONN
17</servercmd>
18</reply>
19
20# Client-side
21<client>
22<server>
23ftp
24</server>
25 <name>
26FTP PORT download, no data conn and no positive preliminary reply
27 </name>
28 <command>
29--max-time %FTPTIME2 ftp://%HOSTIP:%FTPPORT/1209 -P -
30</command>
31
32</client>
33
34# Verify data after the test has been "shot"
35<verify>
36<strippart>
37s/^EPRT \|1\|(.*)/EPRT \|1\|/
38</strippart>
39
40# The protocol part does not include QUIT simply because the error is
41# CURLE_OPERATION_TIMEDOUT (28) which is a generic timeout error without
42# specificly saying for which connection it concerns, and for timeouts libcurl
43# marks the control channel as "invalid". As this test case times out for the
44# data connection it could still use the control channel.
45<protocol>
46USER anonymous
47PASS ftp@example.com
48PWD
49EPRT |1|
50TYPE I
51SIZE 1209
52RETR 1209
53</protocol>
54<errorcode>
5528
56</errorcode>
57</verify>
58</testcase>
59