1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
|
<?xml version="1.0" encoding="US-ASCII"?>
<testcase>
<info>
<keywords>
HTTP
HTTP GET
FTP
PASV
FILE
TFTP
TFTP RRQ
multiprotocol
</keywords>
</info>
# Server-side
<reply>
<data1 crlf="headers" nocheck="yes">
HTTP/1.1 200 OK
Date: Tue, 09 Nov 2010 14:49:00 GMT
Server: test-server/fake
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
ETag: "21025-dc7-39462498"
Accept-Ranges: bytes
Content-Length: 6
Connection: close
Content-Type: text/html
Funny-head: yesyes
-foo-
</data1>
<data2 nocheck="yes">
data
to
see
that FTP
works
so does it?
</data2>
<data3 nocheck="yes">
a chunk of
data
returned
to TFTP client
</data3>
</reply>
# Client-side
<client>
<server>
http
ftp
file
tftp
</server>
<name>
HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ
</name>
<command option="no-include">
http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 ftp://%HOSTIP:%FTPPORT/%TESTNUMBER0002 file://localhost%FILE_PWD/%LOGDIR/test%TESTNUMBER.txt tftp://%HOSTIP:%TFTPPORT//%TESTNUMBER0003
</command>
<file name="%LOGDIR/test%TESTNUMBER.txt">
foo
bar
bar
foo
moo
</file>
</client>
# Verify data after the test has been "shot"
<verify>
<strip>
^timeout = [5-6]$
</strip>
<protocol>
GET /%TESTNUMBER0001 HTTP/1.1%CR
Host: %HOSTIP:%HTTPPORT%CR
User-Agent: curl/%VERSION%CR
Accept: */*%CR
%CR
USER anonymous%CR
PASS ftp@example.com%CR
PWD%CR
EPSV%CR
TYPE I%CR
SIZE %TESTNUMBER0002%CR
RETR %TESTNUMBER0002%CR
opcode = 1
mode = octet
tsize = 0
blksize = 512
filename = /%TESTNUMBER0003
QUIT%CR
</protocol>
<stdout>
-foo-
data
to
see
that FTP
works
so does it?
foo
bar
bar
foo
moo
a chunk of
data
returned
to TFTP client
</stdout>
</verify>
</testcase>
|