FTP HTTPS-proxy # Server-side # This is the HTTPS proxy response HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake Content-Type: text/html Funny-head: yesyes Content-Length: 0 # This is the FTP server response. The Life and Adventures of Robinson Crusoe I was born in the year %TESTNUMBER, in the city of York, of a good family, though not of that country, myfather being a foreigner of Bremen, who settled first at Hull. He got a good estate by merchandise,and leaving off his trade, lived afterwards at York, from whence he had married my mother, whoserelations were named Robinson, a very good family in that country, and from whom I was calledRobinson Kreutznaer; but, by the usual corruption of words in England, we are now called—nay wecall ourselves and write our name—Crusoe; and so my companions always called me. I had two elder brothers, one of whom was lieutenant-colonel to an English regiment of foot inFlanders, formerly commanded by the famous Colonel Lockhart, and was killed at the battle nearDunkirk against the Spaniards. What became of my second brother I never knew, any more thanmy father or mother knew what became of me. # Client-side ftp https-proxy FTP through HTTPS-proxy, with connection reuse -p -x https://%HOSTIP:%HTTPSPROXYPORT ftp://ftp.site.thru.https.proxy:%FTPPORT/%TESTNUMBER --proxy-insecure ftp://ftp.site.thru.https.proxy:%FTPPORT/%TESTNUMBER0002 http proxy # Verify data after the test has been "shot" # The second and third CONNECT will be made to the dynamic port number the FTP # server opens for us, so we can't compare with known pre-existing numbers! s/((https.proxy):(\d+))/$2:12345/ s/^(User-Agent: curl).*/$1/ CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 Host: ftp.site.thru.https.proxy:12345 User-Agent: curl Proxy-Connection: Keep-Alive CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 Host: ftp.site.thru.https.proxy:12345 User-Agent: curl Proxy-Connection: Keep-Alive CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 Host: ftp.site.thru.https.proxy:12345 User-Agent: curl Proxy-Connection: Keep-Alive USER anonymous PASS ftp@example.com PWD EPSV TYPE I SIZE %TESTNUMBER RETR %TESTNUMBER EPSV SIZE %TESTNUMBER0002 RETR %TESTNUMBER0002 QUIT