| # Copyright 2016 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # Fuzzer dictionary targetting DNS responses. |
| |
| # Some 16-bit big-endian values. Useful in a number of fields. Includes |
| # A, AAAA, and CNAME IDs, low values for record counts, and multiples of |
| # lengths of A and AAAA data fields. |
| "\x00\x00" |
| "\x00\x01" |
| "\x00\x02" |
| "\x00\x03" |
| "\x00\x04" |
| "\x00\x05" |
| "\x00\x08" |
| "\x00\x0C" |
| "\x00\x10" |
| "\x00\x1C" |
| "\x00\x20" |
| "\x00\x30" |
| |
| # Some encoded domain names. |
| "\x03foo\x00" |
| "\x03foo\x03com\x00" |
| "\x01a\x03foo\x03com\x00" |
| "\x03bar\x00" |
| |
| # Message headers (Without message ID field). |
| "\x81\x80\x00\x01\x00\x01\x00\x00\x00\x00" |
| # Truncated message, requiring TCP fallback. |
| "\x83\x80\x00\x01\x00\x01\x00\x00\x00\x00" |
| # Varying number of answers |
| "\x81\x80\x00\x01\x00\x00\x00\x00\x00\x00" |
| "\x81\x80\x00\x01\x00\x02\x00\x00\x00\x00" |
| "\x81\x80\x00\x01\x00\x10\x00\x00\x00\x00" |
| |
| # A, AAAA, and CNAME request suffixes - appear after domain name. |
| "\x00\x01\x00\x01" |
| "\x00\x1c\x00\x01" |
| "\x00\x05\x00\x01" |
| |
| # A, AAAA, and CNAME requests for foo and foo.com. |
| "\x03foo\x00\x00\x01\x00\x01" |
| "\x03foo\x00\x00\x1c\x00\x01" |
| "\x03foo\x00\x00\x05\x00\x01" |
| "\x03foo\x03com\x00\x00\x01\x00\x01" |
| "\x03foo\x03com\x00\x00\x1c\x00\x01" |
| "\x03foo\x03com\x00\x00\x05\x00\x01" |
| |
| # All of the answers below are missing the name field, which should appear |
| # first. |
| |
| # A answer suffixes, two different IP and TTLs. |
| "\x00\x01\x00\x01\x00\x00\x00\x00\x00\x04\x01\x02\x03\x04" |
| "\x00\x01\x00\x01\x00\x00\x00\xFF\x00\x04\x02\x03\x04\x05" |
| |
| # AAAA answer suffixes, two different IPs and TTLs. |
| "\x00\x1C\x00\x01\x00\x00\x00\x00\x00\x08\x01\x02\x03\x04\x05\x06\x07\x08" |
| "\x00\x1C\x00\x01\x00\x00\x00\xFF\x00\x08\x02\x03\x04\x05\x06\x07\x08\x09" |
| |
| # CDATA answer suffixes, first two truncated as well. |
| "\x00\x05\x00\x01\x00\x00\x00\xFF" |
| "\x00\x05\x00\x01\x00\x00\x00\xFF\x00\x05" |
| "\x00\x05\x00\x01\x00\x00\x00\xFF\x00\x05\x03foo\x00" |
| "\x00\x05\x00\x01\x00\x00\x00\xFF\x00\x05\x03bar\x00" |
| "\x00\x05\x00\x01\x00\x00\x00\xFF\x00\x09\x03foo\x03com\x00" |