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
|
<?xml version="1.0" encoding="US-ASCII"?>
<testcase>
<info>
<keywords>
FTP
--proto-default
</keywords>
</info>
# Server-side
<reply>
# The purpose of this test is to make sure the --proto-default option works
# properly. We specify a default protocol of FTP and if the option works properly
# curl will use the FTP protocol. If the option is broken however curl will use
# the HTTP protocol.
# In the broken scenario curl would use HTTP to talk to our FTP server. We handle
# that by replying with something that both protocols can understand. Our FTP
# server allows a custom welcome message, so we use that feature to make an HTTP
# reply that contains an FTP reply (think polyglot). In the case of FTP we expect
# curl will return CURLE_WEIRD_SERVER_REPLY so we test for that return code.
<servercmd>
REPLY welcome HTTP/1.1 200 OK\r\nContent-Length: 21\r\n\r\n500 Weird FTP Reply
</servercmd>
</reply>
# Client-side
<client>
<server>
ftp
</server>
<name>
Set the default protocol to ftp for a schemeless URL
</name>
<command>
-H "User-Agent:" -H "Host:" -H "Accept:" --proto-default ftp %HOSTIP:%FTPPORT
</command>
</client>
# Verify data after the test has been "shot"
<verify>
# CURLE_WEIRD_SERVER_REPLY is error code 8
<errorcode>
8
</errorcode>
</verify>
</testcase>
|