| <testcase> | |
| <info> | |
| <keywords> | |
| HTTP | |
| HTTP GET | |
| DOH | |
| </keywords> | |
| </info> | |
| # | |
| # Server-side | |
| <reply> | |
| # This is the DoH response for foo.example.com A 127.0.0.1. This requires that | |
| # the test server is accessible at that address! | |
| <data1 base64="yes"> | |
| SFRUUC8xLjEgMjAwIE9LCkRhdGU6IFRodSwgMDkgTm92IDIwMTAgMTQ6NDk6MDAgR01UClNlcnZl | |
| cjogdGVzdC1zZXJ2ZXIvZmFrZQpDb25uZWN0aW9uOiBjbG9zZQpDb250ZW50LVR5cGU6IGFwcGxp | |
| Y2F0aW9uL2Rucy1tZXNzYWdlCkNvbnRlbnQtTGVuZ3RoOiA0OQoKAAABAAABAAEAAAAAA2Zvbwdl | |
| eGFtcGxlA2NvbQAAAQABwAwAAQABAAAANwAEfwAAAQ== | |
| </data1> | |
| <data> | |
| HTTP/1.1 200 OK | |
| Date: Tue, 09 Nov 2010 14:49:00 GMT | |
| Server: test-server/fake | |
| Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT | |
| ETag: "21025-dc7-39462498" | |
| Accept-Ranges: bytes | |
| Content-Length: 6 | |
| Connection: close | |
| Content-Type: text/html | |
| Funny-head: yesyes | |
| -foo- | |
| </data> | |
| </reply> | |
| # | |
| # Client-side | |
| <client> | |
| <server> | |
| http | |
| </server> | |
| # requires debug so that it can use the DoH server without https | |
| # requires IPv6 so that we can assume and compare both DoH requests | |
| <features> | |
| Debug | |
| DoH | |
| IPv6 | |
| </features> | |
| <name> | |
| HTTP GET using DoH | |
| </name> | |
| <command> | |
| http://foo.example.com:%HTTPPORT/%TESTNUMBER --doh-url http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 | |
| </command> | |
| </client> | |
| # | |
| # Verify data after the test has been "shot" | |
| <verify> | |
| # To make the test ignore the order of the two outgoing DoH requests, strip | |
| # the family byte | |
| <strippart> | |
| s/com\x00\x00(\x1c|\x01)/com-00-00!/g; | |
| </strippart> | |
| <protocol> | |
| POST /%TESTNUMBER0001 HTTP/1.1 | |
| Host: %HOSTIP:%HTTPPORT | |
| Accept: */* | |
| Content-Type: application/dns-message | |
| Content-Length: 33 | |
| %hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%POST /%TESTNUMBER0001 HTTP/1.1 | |
| Host: %HOSTIP:%HTTPPORT | |
| Accept: */* | |
| Content-Type: application/dns-message | |
| Content-Length: 33 | |
| %hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%GET /%TESTNUMBER HTTP/1.1 | |
| Host: foo.example.com:%HTTPPORT | |
| User-Agent: curl/%VERSION | |
| Accept: */* | |
| </protocol> | |
| </verify> | |
| </testcase> |