]> The Tcpdump Group git mirrors - tcpdump/commitdiff
DNS: Sync types with IANA
authorMatthew Martin <[email protected]>
Tue, 9 Mar 2021 22:49:46 +0000 (16:49 -0600)
committerfxlb <[email protected]>
Tue, 18 May 2021 17:09:42 +0000 (17:09 +0000)
IANA reference:
https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml

Remove the UNSPECA type parsing as IANA has that query type number
assigned to NID now.

nameser.h
print-domain.c

index 526c60cab3b94a86c27a1abffe577b459e6aa61b..2a1854fdf4f1de0c143dc2d7945c62467a031e54 100644 (file)
--- a/nameser.h
+++ b/nameser.h
 #define T_RRSIG                46              /* new security signature */
 #define T_NSEC         47              /* provable insecure information */
 #define T_DNSKEY       48              /* new security key */
+#define T_DHCID                49              /* DHCP IDentifier */
+#define T_NSEC3                50              /* Next SECure record v3 */
+#define T_NSEC3PARAM   51              /* NSEC3 PARAMeter */
+#define T_TLSA         52              /* TLS Authentication */
+#define T_SMIMEA       53              /* S/MIME Authentication */
+/* Unassigned */
+#define T_HIP          55              /* Host Identity Protocol */
+#define T_NINFO                56              /* zone status information */
+#define T_RKEY         57              /* Record encryption KEY */
+#define T_TALINK       58              /* Trust Anchor LINK */
+#define T_CDS          59              /* Child Delegation Signer */
+#define T_CDNSKEY      60              /* Child DNSKEY */
+#define T_OPENPGPKEY   61              /* OpenPGP KEY */
+#define T_CSYNC                62              /* Child to parent SYNCronization */
+#define T_ZONEMD       63              /* ZONE data Message Digest */
+#define T_SVCB         64              /* SerViCe Binding */
+#define T_HTTPS                65              /* HTTPS binding */
        /* non standard */
 #define T_SPF          99              /* sender policy framework */
 #define T_UINFO                100             /* user (finger) information */
 #define T_UID          101             /* user ID */
 #define T_GID          102             /* group ID */
 #define T_UNSPEC       103             /* Unspecified format (binary data) */
-#define T_UNSPECA      104             /* "unspecified ASCII". Ugly MIT hack */
+#define T_NID          104             /* Node IDentifier */
+#define T_L32          105             /* Locator 32-bit */
+#define T_L64          106             /* Locator 64-bit */
+#define T_LP           107             /* Locator Pointer */
+#define T_EUI48                108             /* an EUI-48 address */
+#define T_EUI64                109             /* an EUI-64 address */
        /* Query type values which do not appear in resource records */
 #define T_TKEY         249             /* Transaction Key [RFC2930] */
 #define T_TSIG         250             /* Transaction Signature [RFC2845] */
 #define T_MAILA                254             /* transfer mail agent records */
 #define T_ANY          255             /* wildcard match */
 #define T_URI          256             /* uri records [RFC7553] */
+#define T_CAA          257             /* Certification Authority Authorization */
+#define T_AVC          258             /* Application Visibility and Control */
+#define T_DOA          259             /* Digital Object Architecture */
+#define T_AMTRELAY     260             /* Automatic Multicast Tunneling RELAY */
+#define T_TA           32768           /* DNSSEC Trust Authorities */
+#define T_DLV          32769           /* DNSSEC Lookaside Validation */
 
 /*
  * Values for class field
index c3c6fd8f3d542650f89ade1fa5d114031f56af2a..dcfc9fd21c98b979b488ada95c3dda866c4e0f84 100644 (file)
@@ -495,30 +495,30 @@ const struct tok ns_type2str[] = {
        { T_MX,         "MX" },                 /* RFC 1035 */
        { T_TXT,        "TXT" },                /* RFC 1035 */
        { T_RP,         "RP" },                 /* RFC 1183 */
-       { T_AFSDB,      "AFSDB" },              /* RFC 1183 */
+       { T_AFSDB,      "AFSDB" },              /* RFC 5864 */
        { T_X25,        "X25" },                /* RFC 1183 */
        { T_ISDN,       "ISDN" },               /* RFC 1183 */
        { T_RT,         "RT" },                 /* RFC 1183 */
        { T_NSAP,       "NSAP" },               /* RFC 1706 */
-       { T_NSAP_PTR,   "NSAP_PTR" },
-       { T_SIG,        "SIG" },                /* RFC 2535 */
-       { T_KEY,        "KEY" },                /* RFC 2535 */
+       { T_NSAP_PTR,   "NSAP_PTR" },           /* RFC 1706 */
+       { T_SIG,        "SIG" },                /* RFC 3008 */
+       { T_KEY,        "KEY" },                /* RFC 3110 */
        { T_PX,         "PX" },                 /* RFC 2163 */
        { T_GPOS,       "GPOS" },               /* RFC 1712 */
-       { T_AAAA,       "AAAA" },               /* RFC 1886 */
+       { T_AAAA,       "AAAA" },               /* RFC 3596 */
        { T_LOC,        "LOC" },                /* RFC 1876 */
-       { T_NXT,        "NXT" },                /* RFC 2535 */
+       { T_NXT,        "NXT" },                /* RFC 3755 */
        { T_EID,        "EID" },                /* Nimrod */
        { T_NIMLOC,     "NIMLOC" },             /* Nimrod */
        { T_SRV,        "SRV" },                /* RFC 2782 */
        { T_ATMA,       "ATMA" },               /* ATM Forum */
-       { T_NAPTR,      "NAPTR" },              /* RFC 2168, RFC 2915 */
+       { T_NAPTR,      "NAPTR" },              /* RFC 3403 */
        { T_KX,         "KX" },                 /* RFC 2230 */
-       { T_CERT,       "CERT" },               /* RFC 2538 */
-       { T_A6,         "A6" },                 /* RFC 2874 */
-       { T_DNAME,      "DNAME" },              /* RFC 2672 */
+       { T_CERT,       "CERT" },               /* RFC 4398 */
+       { T_A6,         "A6" },                 /* RFC 6563 */
+       { T_DNAME,      "DNAME" },              /* RFC 6672 */
        { T_SINK,       "SINK" },
-       { T_OPT,        "OPT" },                /* RFC 2671 */
+       { T_OPT,        "OPT" },                /* RFC 6891 */
        { T_APL,        "APL" },                /* RFC 3123 */
        { T_DS,         "DS" },                 /* RFC 4034 */
        { T_SSHFP,      "SSHFP" },              /* RFC 4255 */
@@ -526,20 +526,47 @@ const struct tok ns_type2str[] = {
        { T_RRSIG,      "RRSIG" },              /* RFC 4034 */
        { T_NSEC,       "NSEC" },               /* RFC 4034 */
        { T_DNSKEY,     "DNSKEY" },             /* RFC 4034 */
-       { T_SPF,        "SPF" },                /* RFC-schlitt-spf-classic-02.txt */
+       { T_DHCID,      "DHCID" },              /* RFC 4071 */
+       { T_NSEC3,      "NSEC3" },              /* RFC 5155 */
+       { T_NSEC3PARAM, "NSEC3PARAM" },         /* RFC 5155 */
+       { T_TLSA,       "TLSA" },               /* RFC 6698 */
+       { T_SMIMEA,     "SMIMEA" },             /* RFC 8162 */
+       { T_HIP,        "HIP" },                /* RFC 8005 */
+       { T_NINFO,      "NINFO" },
+       { T_RKEY,       "RKEY" },
+       { T_TALINK,     "TALINK" },
+       { T_CDS,        "CDS" },                /* RFC 7344 */
+       { T_CDNSKEY,    "CDNSKEY" },            /* RFC 7344 */
+       { T_OPENPGPKEY, "OPENPGPKEY" },         /* RFC 7929 */
+       { T_CSYNC,      "CSYNC" },              /* RFC 7477 */
+       { T_ZONEMD,     "ZONEMD" },             /* RFC 8976 */
+       { T_SVCB,       "SVCB" },
+       { T_HTTPS,      "HTTPS" },
+       { T_SPF,        "SPF" },                /* RFC 7208 */
        { T_UINFO,      "UINFO" },
        { T_UID,        "UID" },
        { T_GID,        "GID" },
        { T_UNSPEC,     "UNSPEC" },
-       { T_UNSPECA,    "UNSPECA" },
+       { T_NID,        "NID" },                /* RFC 6742 */
+       { T_L32,        "L32" },                /* RFC 6742 */
+       { T_L64,        "L64" },                /* RFC 6742 */
+       { T_LP,         "LP" },                 /* RFC 6742 */
+       { T_EUI48,      "EUI48" },              /* RFC 7043 */
+       { T_EUI64,      "EUI64" },              /* RFC 7043 */
        { T_TKEY,       "TKEY" },               /* RFC 2930 */
-       { T_TSIG,       "TSIG" },               /* RFC 2845 */
+       { T_TSIG,       "TSIG" },               /* RFC 8945 */
        { T_IXFR,       "IXFR" },               /* RFC 1995 */
-       { T_AXFR,       "AXFR" },               /* RFC 1035 */
+       { T_AXFR,       "AXFR" },               /* RFC 5936 */
        { T_MAILB,      "MAILB" },              /* RFC 1035 */
        { T_MAILA,      "MAILA" },              /* RFC 1035 */
-       { T_ANY,        "ANY" },
+       { T_ANY,        "ANY" },                /* RFC 8482 */
        { T_URI,        "URI" },                /* RFC 7553 */
+       { T_CAA,        "CAA" },                /* RFC 8659 */
+       { T_AVC,        "AVC" },
+       { T_DOA,        "DOA" },
+       { T_AMTRELAY,   "AMTRELAY" },           /* RFC 8777 */
+       { T_TA,         "TA" },
+       { T_DLV,        "DLV" },                /* RFC 8749 */
        { 0,            NULL }
 };
 
@@ -834,13 +861,6 @@ ns_rprint(netdissect_options *ndo,
         }
                break;
 
-       case T_UNSPECA:         /* One long string */
-               if (!ND_TTEST_LEN(cp, len))
-                       return(NULL);
-               if (nd_printn(ndo, cp, len, ndo->ndo_snapend))
-                       return(NULL);
-               break;
-
        case T_TSIG:
            {
                if (cp + len > ndo->ndo_snapend)