xref: /third_party/curl/tests/data/test663 (revision 13498266)
113498266Sopenharmony_ci<testcase>
213498266Sopenharmony_ci#
313498266Sopenharmony_ci# This test is crafted to reproduce oss-fuzz bug
413498266Sopenharmony_ci# https://crbug.com/oss-fuzz/17954
513498266Sopenharmony_ci#
613498266Sopenharmony_ci<info>
713498266Sopenharmony_ci<keywords>
813498266Sopenharmony_ciHTTP
913498266Sopenharmony_ciHTTP GET
1013498266Sopenharmony_ciHTTP proxy
1113498266Sopenharmony_cifollowlocation
1213498266Sopenharmony_ci</keywords>
1313498266Sopenharmony_ci</info>
1413498266Sopenharmony_ci#
1513498266Sopenharmony_ci# Server-side
1613498266Sopenharmony_ci<reply>
1713498266Sopenharmony_ci<data>
1813498266Sopenharmony_ciHTTP/1.1 302 OK
1913498266Sopenharmony_ciLocation: http://example.net/there/it/is/../../tes t case=/%TESTNUMBER0002? yes no
2013498266Sopenharmony_ciDate: Tue, 09 Nov 2010 14:49:00 GMT
2113498266Sopenharmony_ciContent-Length: 0
2213498266Sopenharmony_ci
2313498266Sopenharmony_ci</data>
2413498266Sopenharmony_ci<data2>
2513498266Sopenharmony_ciHTTP/1.1 200 OK
2613498266Sopenharmony_ciLocation: this should be ignored
2713498266Sopenharmony_ciDate: Tue, 09 Nov 2010 14:49:00 GMT
2813498266Sopenharmony_ciContent-Length: 5
2913498266Sopenharmony_ci
3013498266Sopenharmony_cibody
3113498266Sopenharmony_ci</data2>
3213498266Sopenharmony_ci<datacheck>
3313498266Sopenharmony_ciHTTP/1.1 302 OK
3413498266Sopenharmony_ciLocation: http://example.net/there/it/is/../../tes t case=/%TESTNUMBER0002? yes no
3513498266Sopenharmony_ciDate: Tue, 09 Nov 2010 14:49:00 GMT
3613498266Sopenharmony_ciContent-Length: 0
3713498266Sopenharmony_ci
3813498266Sopenharmony_ciHTTP/1.1 200 OK
3913498266Sopenharmony_ciLocation: this should be ignored
4013498266Sopenharmony_ciDate: Tue, 09 Nov 2010 14:49:00 GMT
4113498266Sopenharmony_ciContent-Length: 5
4213498266Sopenharmony_ci
4313498266Sopenharmony_cibody
4413498266Sopenharmony_ci</datacheck>
4513498266Sopenharmony_ci</reply>
4613498266Sopenharmony_ci
4713498266Sopenharmony_ci#
4813498266Sopenharmony_ci# Client-side
4913498266Sopenharmony_ci<client>
5013498266Sopenharmony_ci<server>
5113498266Sopenharmony_cihttp
5213498266Sopenharmony_ci</server>
5313498266Sopenharmony_ci<name>
5413498266Sopenharmony_ciHTTP redirect with dotdots and whitespaces in absolute Location: URL
5513498266Sopenharmony_ci</name>
5613498266Sopenharmony_ci<command>
5713498266Sopenharmony_cihttp://example.com/please/../gimme/%TESTNUMBER?foobar#hello -L -x http://%HOSTIP:%HTTPPORT
5813498266Sopenharmony_ci</command>
5913498266Sopenharmony_ci<features>
6013498266Sopenharmony_ciproxy
6113498266Sopenharmony_ci</features>
6213498266Sopenharmony_ci</client>
6313498266Sopenharmony_ci
6413498266Sopenharmony_ci#
6513498266Sopenharmony_ci# Verify data after the test has been "shot"
6613498266Sopenharmony_ci<verify>
6713498266Sopenharmony_ci<protocol>
6813498266Sopenharmony_ciGET http://example.com/gimme/%TESTNUMBER?foobar HTTP/1.1
6913498266Sopenharmony_ciHost: example.com
7013498266Sopenharmony_ciUser-Agent: curl/%VERSION
7113498266Sopenharmony_ciAccept: */*
7213498266Sopenharmony_ciProxy-Connection: Keep-Alive
7313498266Sopenharmony_ci
7413498266Sopenharmony_ciGET http://example.net/there/tes%20t%20case=/%TESTNUMBER0002?+yes+no HTTP/1.1
7513498266Sopenharmony_ciHost: example.net
7613498266Sopenharmony_ciUser-Agent: curl/%VERSION
7713498266Sopenharmony_ciAccept: */*
7813498266Sopenharmony_ciProxy-Connection: Keep-Alive
7913498266Sopenharmony_ci
8013498266Sopenharmony_ci</protocol>
8113498266Sopenharmony_ci</verify>
8213498266Sopenharmony_ci</testcase>
83