mirror of
https://github.com/moparisthebest/curl
synced 2024-12-22 08:08:50 -05:00
36e53ec6ff
.. and add that --proto-redir and CURLOPT_REDIR_PROTOCOLS do not override protocols denied by --proto and CURLOPT_PROTOCOLS. - Add a test to enforce: --proto deny must override --proto-redir allow Closes https://github.com/curl/curl/pull/1031
64 lines
1.0 KiB
Plaintext
64 lines
1.0 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
FTP
|
|
HTTP
|
|
HTTP GET
|
|
--proto
|
|
--proto-redir
|
|
followlocation
|
|
</keywords>
|
|
</info>
|
|
|
|
#
|
|
# Server-side
|
|
<reply>
|
|
<data>
|
|
HTTP/1.1 301 OK swsclose
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Length: 0
|
|
Location: ftp://127.0.0.1:8992/1245
|
|
Connection: close
|
|
|
|
</data>
|
|
</reply>
|
|
|
|
#
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
ftp
|
|
http
|
|
</server>
|
|
<name>
|
|
--proto deny must override --proto-redir allow
|
|
</name>
|
|
<command>
|
|
--location --proto +all,-ftp --proto-redir -all,+ftp http://%HOSTIP:%HTTPPORT/1245
|
|
</command>
|
|
# The data section doesn't do variable substitution, so we must assert this
|
|
<precheck>
|
|
perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%FTPPORT' ne '8992' );"
|
|
</precheck>
|
|
</client>
|
|
|
|
#
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent:.*
|
|
</strip>
|
|
<protocol>
|
|
GET /1245 HTTP/1.1
|
|
Host: %HOSTIP:%HTTPPORT
|
|
Accept: */*
|
|
|
|
</protocol>
|
|
# 1 - Protocol ftp not supported or disabled in libcurl
|
|
<errorcode>
|
|
1
|
|
</errorcode>
|
|
</verify>
|
|
</testcase>
|