summaryrefslogtreecommitdiff
path: root/tests/data/test2100
blob: 1fa0f23bf28a02e94082f40f0086104097fe184e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<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>