|  | <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> | 
|  | <features> | 
|  | none | 
|  | </features> | 
|  | <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> |