summaryrefslogtreecommitdiffstats
path: root/bin/tests/system/doth/README.curl
blob: 475f20f53a9e9d80ed39cb7bbf7ef03b579bb95a (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
<!--
Copyright (C) Internet Systems Consortium, Inc. ("ISC")

SPDX-License-Identifier: MPL-2.0

This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0.  If a copy of the MPL was not distributed with this
file, you can obtain one at https://mozilla.org/MPL/2.0/.

See the COPYRIGHT file distributed with this work for additional
information regarding copyright ownership.
-->

DoH query values that can be passed on the command line for testing
with curl can be obtained by encoding binary DNS messages into
base64url, with trailing '='s removed.

For example:

$ perl bin/tests/system/fromhex.pl << EOF | base64url
    # Transaction ID
    0001
    # Standard query
    0000
    # Questions: 1, Additional: 0
    0001 0000 0000 0000
    # QNAME: example
    07 6578616d706c65 00
    # Type: SOA
    0006
    Class: IN
    0001
EOF

This produces the string "AAEAAAABAAAAAAAAB2V4YW1wbGUAAAbFrMonAAE=". With
the trailing '=' removed, this can then be passed to curl:

curl "https://<server>/dns-query?dns=AAEAAAABAAAAAAAAB2V4YW1wbGUAAAbFrMonAAE"