1 1.1 christos /* rrdef.c 2 1.1 christos * 3 1.1 christos * access functions to rr definitions list. 4 1.1 christos * a Net::DNS like library for C 5 1.1 christos * LibDNS Team @ NLnet Labs 6 1.1 christos * 7 1.1 christos * (c) NLnet Labs, 2004-2006 8 1.1 christos * See the file LICENSE for the license 9 1.1 christos */ 10 1.1 christos /** 11 1.1 christos * \file 12 1.1 christos * 13 1.1 christos * Defines resource record types and constants. 14 1.1 christos */ 15 1.1 christos #include "config.h" 16 1.1 christos #include "sldns/rrdef.h" 17 1.1 christos #include "sldns/parseutil.h" 18 1.1 christos 19 1.1 christos /* classes */ 20 1.1 christos static sldns_lookup_table sldns_rr_classes_data[] = { 21 1.1 christos { LDNS_RR_CLASS_IN, "IN" }, 22 1.1 christos { LDNS_RR_CLASS_CH, "CH" }, 23 1.1 christos { LDNS_RR_CLASS_HS, "HS" }, 24 1.1 christos { LDNS_RR_CLASS_NONE, "NONE" }, 25 1.1 christos { LDNS_RR_CLASS_ANY, "ANY" }, 26 1.1 christos { 0, NULL } 27 1.1 christos }; 28 1.1 christos sldns_lookup_table* sldns_rr_classes = sldns_rr_classes_data; 29 1.1 christos 30 1.1 christos /* types */ 31 1.1 christos static const sldns_rdf_type type_0_wireformat[] = { LDNS_RDF_TYPE_UNKNOWN }; 32 1.1 christos static const sldns_rdf_type type_a_wireformat[] = { LDNS_RDF_TYPE_A }; 33 1.1 christos static const sldns_rdf_type type_ns_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 34 1.1 christos static const sldns_rdf_type type_md_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 35 1.1 christos static const sldns_rdf_type type_mf_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 36 1.1 christos static const sldns_rdf_type type_cname_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 37 1.1 christos static const sldns_rdf_type type_soa_wireformat[] = { 38 1.1 christos LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_INT32, 39 1.1 christos LDNS_RDF_TYPE_PERIOD, LDNS_RDF_TYPE_PERIOD, LDNS_RDF_TYPE_PERIOD, 40 1.1 christos LDNS_RDF_TYPE_PERIOD 41 1.1 christos }; 42 1.1 christos static const sldns_rdf_type type_mb_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 43 1.1 christos static const sldns_rdf_type type_mg_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 44 1.1 christos static const sldns_rdf_type type_mr_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 45 1.1 christos static const sldns_rdf_type type_wks_wireformat[] = { 46 1.1 christos LDNS_RDF_TYPE_A, LDNS_RDF_TYPE_WKS 47 1.1 christos }; 48 1.1 christos static const sldns_rdf_type type_ptr_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 49 1.1 christos static const sldns_rdf_type type_hinfo_wireformat[] = { 50 1.1 christos LDNS_RDF_TYPE_STR, LDNS_RDF_TYPE_STR 51 1.1 christos }; 52 1.1 christos static const sldns_rdf_type type_minfo_wireformat[] = { 53 1.1 christos LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_DNAME 54 1.1 christos }; 55 1.1 christos static const sldns_rdf_type type_mx_wireformat[] = { 56 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME 57 1.1 christos }; 58 1.1 christos static const sldns_rdf_type type_rp_wireformat[] = { 59 1.1 christos LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_DNAME 60 1.1 christos }; 61 1.1 christos static const sldns_rdf_type type_afsdb_wireformat[] = { 62 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME 63 1.1 christos }; 64 1.1 christos static const sldns_rdf_type type_x25_wireformat[] = { LDNS_RDF_TYPE_STR }; 65 1.1 christos static const sldns_rdf_type type_isdn_wireformat[] = { 66 1.1 christos LDNS_RDF_TYPE_STR, LDNS_RDF_TYPE_STR 67 1.1 christos }; 68 1.1 christos static const sldns_rdf_type type_rt_wireformat[] = { 69 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME 70 1.1 christos }; 71 1.1 christos static const sldns_rdf_type type_nsap_wireformat[] = { 72 1.1 christos LDNS_RDF_TYPE_NSAP 73 1.1 christos }; 74 1.1 christos static const sldns_rdf_type type_nsap_ptr_wireformat[] = { 75 1.1.1.7 christos LDNS_RDF_TYPE_UNQUOTED 76 1.1 christos }; 77 1.1 christos static const sldns_rdf_type type_sig_wireformat[] = { 78 1.1 christos LDNS_RDF_TYPE_TYPE, LDNS_RDF_TYPE_ALG, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT32, 79 1.1 christos LDNS_RDF_TYPE_TIME, LDNS_RDF_TYPE_TIME, LDNS_RDF_TYPE_INT16, 80 1.1 christos LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_B64 81 1.1 christos }; 82 1.1 christos static const sldns_rdf_type type_key_wireformat[] = { 83 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_B64 84 1.1 christos }; 85 1.1 christos static const sldns_rdf_type type_px_wireformat[] = { 86 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_DNAME 87 1.1 christos }; 88 1.1 christos static const sldns_rdf_type type_gpos_wireformat[] = { 89 1.1.1.7 christos LDNS_RDF_TYPE_UNQUOTED, LDNS_RDF_TYPE_UNQUOTED, LDNS_RDF_TYPE_UNQUOTED 90 1.1 christos }; 91 1.1 christos static const sldns_rdf_type type_aaaa_wireformat[] = { LDNS_RDF_TYPE_AAAA }; 92 1.1 christos static const sldns_rdf_type type_loc_wireformat[] = { LDNS_RDF_TYPE_LOC }; 93 1.1 christos static const sldns_rdf_type type_nxt_wireformat[] = { 94 1.1 christos LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_UNKNOWN 95 1.1 christos }; 96 1.1 christos static const sldns_rdf_type type_eid_wireformat[] = { 97 1.1 christos LDNS_RDF_TYPE_HEX 98 1.1 christos }; 99 1.1 christos static const sldns_rdf_type type_nimloc_wireformat[] = { 100 1.1 christos LDNS_RDF_TYPE_HEX 101 1.1 christos }; 102 1.1 christos static const sldns_rdf_type type_srv_wireformat[] = { 103 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME 104 1.1 christos }; 105 1.1 christos static const sldns_rdf_type type_atma_wireformat[] = { 106 1.1 christos LDNS_RDF_TYPE_ATMA 107 1.1 christos }; 108 1.1 christos static const sldns_rdf_type type_naptr_wireformat[] = { 109 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_STR, LDNS_RDF_TYPE_STR, LDNS_RDF_TYPE_STR, LDNS_RDF_TYPE_DNAME 110 1.1 christos }; 111 1.1 christos static const sldns_rdf_type type_kx_wireformat[] = { 112 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME 113 1.1 christos }; 114 1.1 christos static const sldns_rdf_type type_cert_wireformat[] = { 115 1.1 christos LDNS_RDF_TYPE_CERT_ALG, LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_ALG, LDNS_RDF_TYPE_B64 116 1.1 christos }; 117 1.1 christos static const sldns_rdf_type type_a6_wireformat[] = { LDNS_RDF_TYPE_UNKNOWN }; 118 1.1 christos static const sldns_rdf_type type_dname_wireformat[] = { LDNS_RDF_TYPE_DNAME }; 119 1.1 christos static const sldns_rdf_type type_sink_wireformat[] = { LDNS_RDF_TYPE_INT8, 120 1.1 christos LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_B64 121 1.1 christos }; 122 1.1 christos static const sldns_rdf_type type_apl_wireformat[] = { 123 1.1 christos LDNS_RDF_TYPE_APL 124 1.1 christos }; 125 1.1 christos static const sldns_rdf_type type_ds_wireformat[] = { 126 1.1 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_ALG, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_HEX 127 1.1 christos }; 128 1.1 christos static const sldns_rdf_type type_sshfp_wireformat[] = { 129 1.1 christos LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_HEX 130 1.1 christos }; 131 1.1 christos static const sldns_rdf_type type_ipseckey_wireformat[] = { 132 1.1 christos LDNS_RDF_TYPE_IPSECKEY 133 1.1 christos }; 134 1.1 christos static const sldns_rdf_type type_rrsig_wireformat[] = { 135 1.1 christos LDNS_RDF_TYPE_TYPE, LDNS_RDF_TYPE_ALG, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT32, 136 1.1 christos LDNS_RDF_TYPE_TIME, LDNS_RDF_TYPE_TIME, LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_B64 137 1.1 christos }; 138 1.1 christos static const sldns_rdf_type type_nsec_wireformat[] = { 139 1.1 christos LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_NSEC 140 1.1 christos }; 141 1.1 christos static const sldns_rdf_type type_dhcid_wireformat[] = { 142 1.1 christos LDNS_RDF_TYPE_B64 143 1.1 christos }; 144 1.1 christos static const sldns_rdf_type type_talink_wireformat[] = { 145 1.1 christos LDNS_RDF_TYPE_DNAME, LDNS_RDF_TYPE_DNAME 146 1.1 christos }; 147 1.1 christos static const sldns_rdf_type type_openpgpkey_wireformat[] = { 148 1.1 christos LDNS_RDF_TYPE_B64 149 1.1 christos }; 150 1.1 christos static const sldns_rdf_type type_csync_wireformat[] = { 151 1.1 christos LDNS_RDF_TYPE_INT32, LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_NSEC 152 1.1 christos }; 153 1.1.1.5 christos static const sldns_rdf_type type_zonemd_wireformat[] = { 154 1.1.1.5 christos LDNS_RDF_TYPE_INT32, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_HEX 155 1.1.1.5 christos }; 156 1.1.1.5 christos static const sldns_rdf_type type_svcb_wireformat[] = { 157 1.1.1.5 christos LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_DNAME 158 1.1.1.5 christos }; 159 1.1 christos /* nsec3 is some vars, followed by same type of data of nsec */ 160 1.1 christos static const sldns_rdf_type type_nsec3_wireformat[] = { 161 1.1 christos /* LDNS_RDF_TYPE_NSEC3_VARS, LDNS_RDF_TYPE_NSEC3_NEXT_OWNER, LDNS_RDF_TYPE_NSEC*/ 162 1.1 christos LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT8, LDNS_RDF_TYPE_INT16, LDNS_RDF_TYPE_NSEC3_SALT, LDNS_RDF_TYPE_NSEC3_NEXT_OWNER, LDNS_RDF_TYPE_NSEC 163 1.1 christos }; 164 1.1 christos 165 1.1 christos static const sldns_rdf_type type_nsec3param_wireformat[] = { 166 1.1 christos /* LDNS_RDF_TYPE_NSEC3_PARAMS_VARS*/ 167 1.1 christos LDNS_RDF_TYPE_INT8, 168 1.1 christos LDNS_RDF_TYPE_INT8, 169 1.1 christos LDNS_RDF_TYPE_INT16, 170 1.1 christos LDNS_RDF_TYPE_NSEC3_SALT 171 1.1 christos }; 172 1.1 christos 173 1.1 christos static const sldns_rdf_type type_dnskey_wireformat[] = { 174 1.1 christos LDNS_RDF_TYPE_INT16, 175 1.1 christos LDNS_RDF_TYPE_INT8, 176 1.1 christos LDNS_RDF_TYPE_ALG, 177 1.1 christos LDNS_RDF_TYPE_B64 178 1.1 christos }; 179 1.1 christos static const sldns_rdf_type type_tkey_wireformat[] = { 180 1.1 christos LDNS_RDF_TYPE_DNAME, 181 1.1 christos LDNS_RDF_TYPE_TIME, 182 1.1 christos LDNS_RDF_TYPE_TIME, 183 1.1 christos LDNS_RDF_TYPE_INT16, 184 1.1.1.2 christos LDNS_RDF_TYPE_TSIGERROR, 185 1.1 christos LDNS_RDF_TYPE_INT16_DATA, 186 1.1 christos LDNS_RDF_TYPE_INT16_DATA, 187 1.1 christos }; 188 1.1 christos static const sldns_rdf_type type_tsig_wireformat[] = { 189 1.1 christos LDNS_RDF_TYPE_DNAME, 190 1.1 christos LDNS_RDF_TYPE_TSIGTIME, 191 1.1 christos LDNS_RDF_TYPE_INT16, 192 1.1 christos LDNS_RDF_TYPE_INT16_DATA, 193 1.1 christos LDNS_RDF_TYPE_INT16, 194 1.1.1.2 christos LDNS_RDF_TYPE_TSIGERROR, 195 1.1 christos LDNS_RDF_TYPE_INT16_DATA 196 1.1 christos }; 197 1.1 christos static const sldns_rdf_type type_tlsa_wireformat[] = { 198 1.1 christos LDNS_RDF_TYPE_INT8, 199 1.1 christos LDNS_RDF_TYPE_INT8, 200 1.1 christos LDNS_RDF_TYPE_INT8, 201 1.1 christos LDNS_RDF_TYPE_HEX 202 1.1 christos }; 203 1.1 christos static const sldns_rdf_type type_hip_wireformat[] = { 204 1.1 christos LDNS_RDF_TYPE_HIP 205 1.1 christos }; 206 1.1 christos static const sldns_rdf_type type_nid_wireformat[] = { 207 1.1 christos LDNS_RDF_TYPE_INT16, 208 1.1 christos LDNS_RDF_TYPE_ILNP64 209 1.1 christos }; 210 1.1 christos static const sldns_rdf_type type_l32_wireformat[] = { 211 1.1 christos LDNS_RDF_TYPE_INT16, 212 1.1 christos LDNS_RDF_TYPE_A 213 1.1 christos }; 214 1.1 christos static const sldns_rdf_type type_l64_wireformat[] = { 215 1.1 christos LDNS_RDF_TYPE_INT16, 216 1.1 christos LDNS_RDF_TYPE_ILNP64 217 1.1 christos }; 218 1.1 christos static const sldns_rdf_type type_lp_wireformat[] = { 219 1.1 christos LDNS_RDF_TYPE_INT16, 220 1.1 christos LDNS_RDF_TYPE_DNAME 221 1.1 christos }; 222 1.1 christos static const sldns_rdf_type type_eui48_wireformat[] = { 223 1.1 christos LDNS_RDF_TYPE_EUI48 224 1.1 christos }; 225 1.1 christos static const sldns_rdf_type type_eui64_wireformat[] = { 226 1.1 christos LDNS_RDF_TYPE_EUI64 227 1.1 christos }; 228 1.1 christos static const sldns_rdf_type type_uri_wireformat[] = { 229 1.1 christos LDNS_RDF_TYPE_INT16, 230 1.1 christos LDNS_RDF_TYPE_INT16, 231 1.1 christos LDNS_RDF_TYPE_LONG_STR 232 1.1 christos }; 233 1.1 christos static const sldns_rdf_type type_caa_wireformat[] = { 234 1.1 christos LDNS_RDF_TYPE_INT8, 235 1.1 christos LDNS_RDF_TYPE_TAG, 236 1.1 christos LDNS_RDF_TYPE_LONG_STR 237 1.1 christos }; 238 1.1 christos 239 1.1 christos /* All RR's defined in 1035 are well known and can thus 240 1.1 christos * be compressed. See RFC3597. These RR's are: 241 1.1 christos * CNAME HINFO MB MD MF MG MINFO MR MX NULL NS PTR SOA TXT 242 1.1 christos */ 243 1.1 christos static sldns_rr_descriptor rdata_field_descriptors[] = { 244 1.1 christos /* 0 */ 245 1.1.1.4 christos {(enum sldns_enum_rr_type)0, NULL, 0, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 246 1.1 christos /* 1 */ 247 1.1 christos {LDNS_RR_TYPE_A, "A", 1, 1, type_a_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 248 1.1 christos /* 2 */ 249 1.1 christos {LDNS_RR_TYPE_NS, "NS", 1, 1, type_ns_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 250 1.1 christos /* 3 */ 251 1.1 christos {LDNS_RR_TYPE_MD, "MD", 1, 1, type_md_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 252 1.1 christos /* 4 */ 253 1.1 christos {LDNS_RR_TYPE_MF, "MF", 1, 1, type_mf_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 254 1.1 christos /* 5 */ 255 1.1 christos {LDNS_RR_TYPE_CNAME, "CNAME", 1, 1, type_cname_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 256 1.1 christos /* 6 */ 257 1.1 christos {LDNS_RR_TYPE_SOA, "SOA", 7, 7, type_soa_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 2 }, 258 1.1 christos /* 7 */ 259 1.1 christos {LDNS_RR_TYPE_MB, "MB", 1, 1, type_mb_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 260 1.1 christos /* 8 */ 261 1.1 christos {LDNS_RR_TYPE_MG, "MG", 1, 1, type_mg_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 262 1.1 christos /* 9 */ 263 1.1 christos {LDNS_RR_TYPE_MR, "MR", 1, 1, type_mr_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 264 1.1 christos /* 10 */ 265 1.1 christos {LDNS_RR_TYPE_NULL, "NULL", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 266 1.1 christos /* 11 */ 267 1.1 christos {LDNS_RR_TYPE_WKS, "WKS", 2, 2, type_wks_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 268 1.1 christos /* 12 */ 269 1.1 christos {LDNS_RR_TYPE_PTR, "PTR", 1, 1, type_ptr_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 270 1.1 christos /* 13 */ 271 1.1 christos {LDNS_RR_TYPE_HINFO, "HINFO", 2, 2, type_hinfo_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 272 1.1 christos /* 14 */ 273 1.1 christos {LDNS_RR_TYPE_MINFO, "MINFO", 2, 2, type_minfo_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 2 }, 274 1.1 christos /* 15 */ 275 1.1 christos {LDNS_RR_TYPE_MX, "MX", 2, 2, type_mx_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_COMPRESS, 1 }, 276 1.1 christos /* 16 */ 277 1.1 christos {LDNS_RR_TYPE_TXT, "TXT", 1, 0, NULL, LDNS_RDF_TYPE_STR, LDNS_RR_NO_COMPRESS, 0 }, 278 1.1 christos /* 17 */ 279 1.1 christos {LDNS_RR_TYPE_RP, "RP", 2, 2, type_rp_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 2 }, 280 1.1 christos /* 18 */ 281 1.1 christos {LDNS_RR_TYPE_AFSDB, "AFSDB", 2, 2, type_afsdb_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 282 1.1 christos /* 19 */ 283 1.1 christos {LDNS_RR_TYPE_X25, "X25", 1, 1, type_x25_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 284 1.1 christos /* 20 */ 285 1.1 christos {LDNS_RR_TYPE_ISDN, "ISDN", 1, 2, type_isdn_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 286 1.1 christos /* 21 */ 287 1.1 christos {LDNS_RR_TYPE_RT, "RT", 2, 2, type_rt_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 288 1.1 christos /* 22 */ 289 1.1 christos {LDNS_RR_TYPE_NSAP, "NSAP", 1, 1, type_nsap_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 290 1.1 christos /* 23 */ 291 1.1 christos {LDNS_RR_TYPE_NSAP_PTR, "NSAP-PTR", 1, 1, type_nsap_ptr_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 292 1.1 christos /* 24 */ 293 1.1 christos {LDNS_RR_TYPE_SIG, "SIG", 9, 9, type_sig_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 294 1.1 christos /* 25 */ 295 1.1 christos {LDNS_RR_TYPE_KEY, "KEY", 4, 4, type_key_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 296 1.1 christos /* 26 */ 297 1.1 christos {LDNS_RR_TYPE_PX, "PX", 3, 3, type_px_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 2 }, 298 1.1 christos /* 27 */ 299 1.1 christos {LDNS_RR_TYPE_GPOS, "GPOS", 3, 3, type_gpos_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 300 1.1 christos /* 28 */ 301 1.1 christos {LDNS_RR_TYPE_AAAA, "AAAA", 1, 1, type_aaaa_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 302 1.1 christos /* 29 */ 303 1.1 christos {LDNS_RR_TYPE_LOC, "LOC", 1, 1, type_loc_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 304 1.1 christos /* 30 */ 305 1.1 christos {LDNS_RR_TYPE_NXT, "NXT", 2, 2, type_nxt_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 306 1.1 christos /* 31 */ 307 1.1 christos {LDNS_RR_TYPE_EID, "EID", 1, 1, type_eid_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 308 1.1 christos /* 32 */ 309 1.1 christos {LDNS_RR_TYPE_NIMLOC, "NIMLOC", 1, 1, type_nimloc_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 310 1.1 christos /* 33 */ 311 1.1 christos {LDNS_RR_TYPE_SRV, "SRV", 4, 4, type_srv_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 312 1.1 christos /* 34 */ 313 1.1 christos {LDNS_RR_TYPE_ATMA, "ATMA", 1, 1, type_atma_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 314 1.1 christos /* 35 */ 315 1.1 christos {LDNS_RR_TYPE_NAPTR, "NAPTR", 6, 6, type_naptr_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 316 1.1 christos /* 36 */ 317 1.1 christos {LDNS_RR_TYPE_KX, "KX", 2, 2, type_kx_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 318 1.1 christos /* 37 */ 319 1.1 christos {LDNS_RR_TYPE_CERT, "CERT", 4, 4, type_cert_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 320 1.1 christos /* 38 */ 321 1.1 christos {LDNS_RR_TYPE_A6, "A6", 1, 1, type_a6_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 322 1.1 christos /* 39 */ 323 1.1 christos {LDNS_RR_TYPE_DNAME, "DNAME", 1, 1, type_dname_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 324 1.1 christos /* 40 */ 325 1.1 christos {LDNS_RR_TYPE_SINK, "SINK", 1, 1, type_sink_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 326 1.1 christos /* 41 */ 327 1.1 christos {LDNS_RR_TYPE_OPT, "OPT", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 328 1.1 christos /* 42 */ 329 1.1 christos {LDNS_RR_TYPE_APL, "APL", 0, 0, type_apl_wireformat, LDNS_RDF_TYPE_APL, LDNS_RR_NO_COMPRESS, 0 }, 330 1.1 christos /* 43 */ 331 1.1 christos {LDNS_RR_TYPE_DS, "DS", 4, 4, type_ds_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 332 1.1 christos /* 44 */ 333 1.1 christos {LDNS_RR_TYPE_SSHFP, "SSHFP", 3, 3, type_sshfp_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 334 1.1 christos /* 45 */ 335 1.1 christos {LDNS_RR_TYPE_IPSECKEY, "IPSECKEY", 1, 1, type_ipseckey_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 336 1.1 christos /* 46 */ 337 1.1 christos {LDNS_RR_TYPE_RRSIG, "RRSIG", 9, 9, type_rrsig_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 338 1.1 christos /* 47 */ 339 1.1 christos {LDNS_RR_TYPE_NSEC, "NSEC", 1, 2, type_nsec_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 340 1.1 christos /* 48 */ 341 1.1 christos {LDNS_RR_TYPE_DNSKEY, "DNSKEY", 4, 4, type_dnskey_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 342 1.1 christos /* 49 */ 343 1.1 christos {LDNS_RR_TYPE_DHCID, "DHCID", 1, 1, type_dhcid_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 344 1.1 christos /* 50 */ 345 1.1 christos {LDNS_RR_TYPE_NSEC3, "NSEC3", 5, 6, type_nsec3_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 346 1.1 christos /* 51 */ 347 1.1 christos {LDNS_RR_TYPE_NSEC3PARAM, "NSEC3PARAM", 4, 4, type_nsec3param_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 348 1.1 christos /* 52 */ 349 1.1 christos {LDNS_RR_TYPE_TLSA, "TLSA", 4, 4, type_tlsa_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 350 1.1.1.3 christos /* 53 */ 351 1.1.1.2 christos {LDNS_RR_TYPE_SMIMEA, "SMIMEA", 4, 4, type_tlsa_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 352 1.1.1.3 christos /* 54 */ 353 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE54", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 354 1.1 christos /* 55 355 1.1 christos * Hip ends with 0 or more Rendezvous Servers represented as dname's. 356 1.1 christos * Hence the LDNS_RDF_TYPE_DNAME _variable field and the _maximum field 357 1.1 christos * set to 0. 358 1.1 christos */ 359 1.1 christos {LDNS_RR_TYPE_HIP, "HIP", 1, 1, type_hip_wireformat, LDNS_RDF_TYPE_DNAME, LDNS_RR_NO_COMPRESS, 0 }, 360 1.1 christos 361 1.1 christos #ifdef DRAFT_RRTYPES 362 1.1 christos /* 56 */ 363 1.1 christos {LDNS_RR_TYPE_NINFO, "NINFO", 1, 0, NULL, LDNS_RDF_TYPE_STR, LDNS_RR_NO_COMPRESS, 0 }, 364 1.1 christos /* 57 */ 365 1.1 christos {LDNS_RR_TYPE_RKEY, "RKEY", 4, 4, type_key_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 366 1.1 christos #else 367 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE56", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 368 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE57", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 369 1.1 christos #endif 370 1.1 christos /* 58 */ 371 1.1 christos {LDNS_RR_TYPE_TALINK, "TALINK", 2, 2, type_talink_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 2 }, 372 1.1 christos 373 1.1 christos /* 59 */ 374 1.1 christos {LDNS_RR_TYPE_CDS, "CDS", 4, 4, type_ds_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 375 1.1 christos /* 60 */ 376 1.1 christos {LDNS_RR_TYPE_CDNSKEY, "CDNSKEY", 4, 4, type_dnskey_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 377 1.1 christos /* 61 */ 378 1.1 christos {LDNS_RR_TYPE_OPENPGPKEY, "OPENPGPKEY", 1, 1, type_openpgpkey_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 379 1.1 christos /* 62 */ 380 1.1 christos {LDNS_RR_TYPE_CSYNC, "CSYNC", 3, 3, type_csync_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 381 1.1.1.5 christos /* 63 */ 382 1.1.1.5 christos {LDNS_RR_TYPE_ZONEMD, "ZONEMD", 4, 4, type_zonemd_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 383 1.1.1.5 christos /* 64 */ 384 1.1.1.5 christos {LDNS_RR_TYPE_SVCB, "SVCB", 2, 2, type_svcb_wireformat, LDNS_RDF_TYPE_SVCPARAM, LDNS_RR_NO_COMPRESS, 1 }, 385 1.1.1.5 christos /* 65 */ 386 1.1.1.5 christos {LDNS_RR_TYPE_HTTPS, "HTTPS", 2, 2, type_svcb_wireformat, LDNS_RDF_TYPE_SVCPARAM, LDNS_RR_NO_COMPRESS, 1 }, 387 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE66", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 388 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE67", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 389 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE68", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 390 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE69", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 391 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE70", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 392 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE71", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 393 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE72", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 394 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE73", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 395 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE74", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 396 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE75", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 397 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE76", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 398 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE77", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 399 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE78", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 400 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE79", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 401 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE80", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 402 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE81", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 403 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE82", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 404 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE83", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 405 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE84", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 406 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE85", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 407 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE86", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 408 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE87", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 409 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE88", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 410 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE89", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 411 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE90", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 412 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE91", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 413 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE92", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 414 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE93", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 415 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE94", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 416 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE95", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 417 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE96", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 418 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE97", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 419 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE98", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 420 1.1 christos 421 1.1 christos /* 99 */ 422 1.1 christos {LDNS_RR_TYPE_SPF, "SPF", 1, 0, NULL, LDNS_RDF_TYPE_STR, LDNS_RR_NO_COMPRESS, 0 }, 423 1.1 christos 424 1.1 christos /* UINFO [IANA-Reserved] */ 425 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE100", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 426 1.1 christos /* UID [IANA-Reserved] */ 427 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE101", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 428 1.1 christos /* GID [IANA-Reserved] */ 429 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE102", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 430 1.1 christos /* UNSPEC [IANA-Reserved] */ 431 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE103", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 432 1.1 christos 433 1.1 christos /* 104 */ 434 1.1 christos {LDNS_RR_TYPE_NID, "NID", 2, 2, type_nid_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 435 1.1 christos /* 105 */ 436 1.1 christos {LDNS_RR_TYPE_L32, "L32", 2, 2, type_l32_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 437 1.1 christos /* 106 */ 438 1.1 christos {LDNS_RR_TYPE_L64, "L64", 2, 2, type_l64_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 439 1.1 christos /* 107 */ 440 1.1 christos {LDNS_RR_TYPE_LP, "LP", 2, 2, type_lp_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 441 1.1 christos 442 1.1 christos /* 108 */ 443 1.1 christos {LDNS_RR_TYPE_EUI48, "EUI48", 1, 1, type_eui48_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 444 1.1 christos /* 109 */ 445 1.1 christos {LDNS_RR_TYPE_EUI64, "EUI64", 1, 1, type_eui64_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 446 1.1 christos 447 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE110", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 448 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE111", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 449 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE112", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 450 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE113", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 451 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE114", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 452 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE115", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 453 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE116", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 454 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE117", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 455 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE118", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 456 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE119", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 457 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE120", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 458 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE121", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 459 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE122", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 460 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE123", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 461 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE124", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 462 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE125", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 463 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE126", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 464 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE127", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 465 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE128", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 466 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE129", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 467 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE130", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 468 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE131", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 469 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE132", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 470 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE133", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 471 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE134", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 472 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE135", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 473 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE136", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 474 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE137", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 475 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE138", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 476 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE139", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 477 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE140", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 478 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE141", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 479 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE142", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 480 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE143", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 481 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE144", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 482 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE145", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 483 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE146", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 484 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE147", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 485 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE148", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 486 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE149", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 487 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE150", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 488 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE151", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 489 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE152", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 490 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE153", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 491 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE154", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 492 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE155", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 493 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE156", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 494 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE157", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 495 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE158", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 496 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE159", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 497 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE160", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 498 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE161", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 499 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE162", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 500 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE163", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 501 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE164", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 502 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE165", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 503 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE166", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 504 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE167", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 505 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE168", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 506 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE169", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 507 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE170", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 508 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE171", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 509 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE172", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 510 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE173", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 511 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE174", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 512 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE175", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 513 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE176", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 514 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE177", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 515 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE178", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 516 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE179", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 517 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE180", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 518 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE181", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 519 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE182", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 520 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE183", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 521 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE184", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 522 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE185", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 523 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE186", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 524 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE187", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 525 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE188", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 526 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE189", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 527 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE190", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 528 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE191", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 529 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE192", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 530 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE193", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 531 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE194", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 532 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE195", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 533 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE196", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 534 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE197", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 535 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE198", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 536 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE199", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 537 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE200", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 538 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE201", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 539 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE202", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 540 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE203", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 541 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE204", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 542 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE205", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 543 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE206", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 544 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE207", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 545 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE208", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 546 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE209", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 547 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE210", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 548 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE211", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 549 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE212", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 550 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE213", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 551 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE214", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 552 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE215", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 553 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE216", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 554 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE217", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 555 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE218", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 556 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE219", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 557 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE220", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 558 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE221", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 559 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE222", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 560 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE223", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 561 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE224", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 562 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE225", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 563 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE226", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 564 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE227", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 565 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE228", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 566 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE229", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 567 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE230", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 568 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE231", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 569 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE232", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 570 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE233", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 571 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE234", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 572 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE235", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 573 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE236", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 574 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE237", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 575 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE238", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 576 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE239", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 577 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE240", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 578 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE241", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 579 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE242", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 580 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE243", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 581 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE244", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 582 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE245", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 583 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE246", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 584 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE247", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 585 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE248", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 586 1.1 christos 587 1.1 christos /* LDNS_RDF_TYPE_INT16_DATA takes two fields (length and data) as one. 588 1.1 christos * So, unlike RFC 2930 spec, we have 7 min/max rdf's i.s.o. 8/9. 589 1.1 christos */ 590 1.1 christos /* 249 */ 591 1.1 christos {LDNS_RR_TYPE_TKEY, "TKEY", 7, 7, type_tkey_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 592 1.1 christos /* LDNS_RDF_TYPE_INT16_DATA takes two fields (length and data) as one. 593 1.1 christos * So, unlike RFC 2930 spec, we have 7 min/max rdf's i.s.o. 8/9. 594 1.1 christos */ 595 1.1 christos /* 250 */ 596 1.1 christos {LDNS_RR_TYPE_TSIG, "TSIG", 7, 7, type_tsig_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 1 }, 597 1.1 christos 598 1.1 christos /* IXFR: A request for a transfer of an incremental zone transfer */ 599 1.1 christos {LDNS_RR_TYPE_IXFR, "IXFR", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 600 1.1 christos /* AXFR: A request for a transfer of an entire zone */ 601 1.1 christos {LDNS_RR_TYPE_AXFR, "AXFR", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 602 1.1 christos /* MAILB: A request for mailbox-related records (MB, MG or MR) */ 603 1.1 christos {LDNS_RR_TYPE_MAILB, "MAILB", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 604 1.1 christos /* MAILA: A request for mail agent RRs (Obsolete - see MX) */ 605 1.1 christos {LDNS_RR_TYPE_MAILA, "MAILA", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 606 1.1 christos /* ANY: A request for all (available) records */ 607 1.1 christos {LDNS_RR_TYPE_ANY, "ANY", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 608 1.1 christos 609 1.1 christos /* 256 */ 610 1.1 christos {LDNS_RR_TYPE_URI, "URI", 3, 3, type_uri_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 611 1.1 christos /* 257 */ 612 1.1 christos {LDNS_RR_TYPE_CAA, "CAA", 3, 3, type_caa_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 613 1.1.1.2 christos #ifdef DRAFT_RRTYPES 614 1.1.1.2 christos /* 258 */ 615 1.1.1.2 christos {LDNS_RR_TYPE_AVC, "AVC", 1, 0, NULL, LDNS_RDF_TYPE_STR, LDNS_RR_NO_COMPRESS, 0 }, 616 1.1.1.2 christos #else 617 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE258", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 618 1.1.1.2 christos #endif 619 1.1 christos 620 1.1.1.7 christos {(enum sldns_enum_rr_type)0, "TYPE259", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 621 1.1.1.7 christos {(enum sldns_enum_rr_type)0, "TYPE260", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 622 1.1.1.7 christos 623 1.1.1.7 christos /* 261 */ 624 1.1.1.7 christos {LDNS_RR_TYPE_RESINFO, "RESINFO", 1, 0, NULL, LDNS_RDF_TYPE_UNQUOTED, LDNS_RR_NO_COMPRESS, 0 }, 625 1.1.1.7 christos 626 1.1 christos /* split in array, no longer contiguous */ 627 1.1 christos 628 1.1 christos #ifdef DRAFT_RRTYPES 629 1.1 christos /* 32768 */ 630 1.1 christos {LDNS_RR_TYPE_TA, "TA", 4, 4, type_ds_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 631 1.1 christos #else 632 1.1.1.4 christos {(enum sldns_enum_rr_type)0, "TYPE32768", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 }, 633 1.1 christos #endif 634 1.1 christos /* 32769 */ 635 1.1 christos {LDNS_RR_TYPE_DLV, "DLV", 4, 4, type_ds_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 } 636 1.1 christos }; 637 1.1 christos 638 1.1 christos /** 639 1.1 christos * \def LDNS_RDATA_FIELD_DESCRIPTORS_COUNT 640 1.1 christos * computes the number of rdata fields 641 1.1 christos */ 642 1.1 christos #define LDNS_RDATA_FIELD_DESCRIPTORS_COUNT \ 643 1.1 christos (sizeof(rdata_field_descriptors)/sizeof(rdata_field_descriptors[0])) 644 1.1 christos 645 1.1 christos const sldns_rr_descriptor * 646 1.1 christos sldns_rr_descript(uint16_t type) 647 1.1 christos { 648 1.1 christos size_t i; 649 1.1 christos if (type < LDNS_RDATA_FIELD_DESCRIPTORS_COMMON) { 650 1.1 christos return &rdata_field_descriptors[type]; 651 1.1 christos } else { 652 1.1 christos /* because not all array index equals type code */ 653 1.1 christos for (i = LDNS_RDATA_FIELD_DESCRIPTORS_COMMON; 654 1.1 christos i < LDNS_RDATA_FIELD_DESCRIPTORS_COUNT; 655 1.1 christos i++) { 656 1.1 christos if (rdata_field_descriptors[i]._type == type) { 657 1.1 christos return &rdata_field_descriptors[i]; 658 1.1 christos } 659 1.1 christos } 660 1.1 christos return &rdata_field_descriptors[0]; 661 1.1 christos } 662 1.1 christos } 663 1.1 christos 664 1.1 christos size_t 665 1.1 christos sldns_rr_descriptor_minimum(const sldns_rr_descriptor *descriptor) 666 1.1 christos { 667 1.1 christos if (descriptor) { 668 1.1 christos return descriptor->_minimum; 669 1.1 christos } else { 670 1.1 christos return 0; 671 1.1 christos } 672 1.1 christos } 673 1.1 christos 674 1.1 christos size_t 675 1.1 christos sldns_rr_descriptor_maximum(const sldns_rr_descriptor *descriptor) 676 1.1 christos { 677 1.1 christos if (descriptor) { 678 1.1 christos if (descriptor->_variable != LDNS_RDF_TYPE_NONE) { 679 1.1 christos return 65535; /* cannot be more than 64k */ 680 1.1 christos } else { 681 1.1 christos return descriptor->_maximum; 682 1.1 christos } 683 1.1 christos } else { 684 1.1 christos return 0; 685 1.1 christos } 686 1.1 christos } 687 1.1 christos 688 1.1 christos sldns_rdf_type 689 1.1 christos sldns_rr_descriptor_field_type(const sldns_rr_descriptor *descriptor, 690 1.1 christos size_t index) 691 1.1 christos { 692 1.1 christos assert(descriptor != NULL); 693 1.1 christos assert(index < descriptor->_maximum 694 1.1 christos || descriptor->_variable != LDNS_RDF_TYPE_NONE); 695 1.1 christos if (index < descriptor->_maximum) { 696 1.1 christos return descriptor->_wireformat[index]; 697 1.1 christos } else { 698 1.1 christos return descriptor->_variable; 699 1.1 christos } 700 1.1 christos } 701 1.1 christos 702 1.1 christos sldns_rr_type 703 1.1 christos sldns_get_rr_type_by_name(const char *name) 704 1.1 christos { 705 1.1 christos unsigned int i; 706 1.1 christos const char *desc_name; 707 1.1 christos const sldns_rr_descriptor *desc; 708 1.1 christos 709 1.1 christos /* TYPEXX representation */ 710 1.1 christos if (strlen(name) > 4 && strncasecmp(name, "TYPE", 4) == 0) { 711 1.1.1.6 christos unsigned int a = atoi(name + 4); 712 1.1.1.6 christos if (a > LDNS_RR_TYPE_LAST) { 713 1.1.1.6 christos return (enum sldns_enum_rr_type)0; 714 1.1.1.6 christos } 715 1.1.1.6 christos return a; 716 1.1 christos } 717 1.1 christos 718 1.1 christos /* Normal types */ 719 1.1 christos for (i = 0; i < (unsigned int) LDNS_RDATA_FIELD_DESCRIPTORS_COUNT; i++) { 720 1.1 christos desc = &rdata_field_descriptors[i]; 721 1.1 christos desc_name = desc->_name; 722 1.1 christos if(desc_name && 723 1.1 christos strlen(name) == strlen(desc_name) && 724 1.1 christos strncasecmp(name, desc_name, strlen(desc_name)) == 0) { 725 1.1 christos /* because not all array index equals type code */ 726 1.1 christos return desc->_type; 727 1.1 christos } 728 1.1 christos } 729 1.1 christos 730 1.1 christos /* special cases for query types */ 731 1.1 christos if (strlen(name) == 4 && strncasecmp(name, "IXFR", 4) == 0) { 732 1.1.1.4 christos return LDNS_RR_TYPE_IXFR; 733 1.1 christos } else if (strlen(name) == 4 && strncasecmp(name, "AXFR", 4) == 0) { 734 1.1.1.4 christos return LDNS_RR_TYPE_AXFR; 735 1.1 christos } else if (strlen(name) == 5 && strncasecmp(name, "MAILB", 5) == 0) { 736 1.1.1.4 christos return LDNS_RR_TYPE_MAILB; 737 1.1 christos } else if (strlen(name) == 5 && strncasecmp(name, "MAILA", 5) == 0) { 738 1.1.1.4 christos return LDNS_RR_TYPE_MAILA; 739 1.1 christos } else if (strlen(name) == 3 && strncasecmp(name, "ANY", 3) == 0) { 740 1.1.1.4 christos return LDNS_RR_TYPE_ANY; 741 1.1 christos } 742 1.1 christos 743 1.1.1.4 christos return (enum sldns_enum_rr_type)0; 744 1.1 christos } 745 1.1 christos 746 1.1 christos sldns_rr_class 747 1.1 christos sldns_get_rr_class_by_name(const char *name) 748 1.1 christos { 749 1.1 christos sldns_lookup_table *lt; 750 1.1 christos 751 1.1 christos /* CLASSXX representation */ 752 1.1 christos if (strlen(name) > 5 && strncasecmp(name, "CLASS", 5) == 0) { 753 1.1.1.6 christos unsigned int a = atoi(name + 5); 754 1.1.1.6 christos if (a > LDNS_RR_CLASS_LAST) { 755 1.1.1.6 christos return (enum sldns_enum_rr_class)0; 756 1.1.1.6 christos } 757 1.1.1.6 christos return a; 758 1.1 christos } 759 1.1 christos 760 1.1 christos /* Normal types */ 761 1.1 christos lt = sldns_lookup_by_name(sldns_rr_classes, name); 762 1.1 christos if (lt) { 763 1.1 christos return lt->id; 764 1.1 christos } 765 1.1 christos return 0; 766 1.1 christos } 767