diff options
author | dougb <dougb@FreeBSD.org> | 2011-07-16 11:20:54 +0000 |
---|---|---|
committer | dougb <dougb@FreeBSD.org> | 2011-07-16 11:20:54 +0000 |
commit | 264979c9d1dc6f5cacff8dc9ec89d787dfa80612 (patch) | |
tree | 3215a62144f0dff34bb0f666e3526778f7f62937 /lib/bind/dns/code.h | |
parent | f4894c219c9f0fee1e1d5d793748161bba7d4111 (diff) | |
download | FreeBSD-src-264979c9d1dc6f5cacff8dc9ec89d787dfa80612.zip FreeBSD-src-264979c9d1dc6f5cacff8dc9ec89d787dfa80612.tar.gz |
bmake and other updates necessary for the BIND 9.8.x upgrade.
This includes a structural change regarding atomic ops. Previously they
were enabled on all platforms unless we had knowledge that they did not
work. However both work performed by marius@ on sparc64 and the fact that
the 9.8.x branch is fussier in this area has demonstrated that this is
not a safe approach. So I've modified a patch provided by marius to
enable them for i386, amd64, and ia64 only.
Diffstat (limited to 'lib/bind/dns/code.h')
-rw-r--r-- | lib/bind/dns/code.h | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/lib/bind/dns/code.h b/lib/bind/dns/code.h index 779285e..bfc5330 100644 --- a/lib/bind/dns/code.h +++ b/lib/bind/dns/code.h @@ -83,11 +83,13 @@ #include "rdata/in_1/dhcid_49.c" #include "rdata/generic/nsec3_50.c" #include "rdata/generic/nsec3param_51.c" +#include "rdata/generic/hip_55.c" #include "rdata/generic/spf_99.c" #include "rdata/generic/unspec_103.c" #include "rdata/generic/tkey_249.c" #include "rdata/any_255/tsig_250.c" #include "rdata/generic/dlv_32769.c" +#include "rdata/generic/keydata_65533.c" @@ -190,6 +192,7 @@ break; \ case 50: result = fromtext_nsec3(rdclass, type, lexer, origin, options, target, callbacks); break; \ case 51: result = fromtext_nsec3param(rdclass, type, lexer, origin, options, target, callbacks); break; \ + case 55: result = fromtext_hip(rdclass, type, lexer, origin, options, target, callbacks); break; \ case 99: result = fromtext_spf(rdclass, type, lexer, origin, options, target, callbacks); break; \ case 103: result = fromtext_unspec(rdclass, type, lexer, origin, options, target, callbacks); break; \ case 249: result = fromtext_tkey(rdclass, type, lexer, origin, options, target, callbacks); break; \ @@ -199,6 +202,7 @@ } \ break; \ case 32769: result = fromtext_dlv(rdclass, type, lexer, origin, options, target, callbacks); break; \ + case 65533: result = fromtext_keydata(rdclass, type, lexer, origin, options, target, callbacks); break; \ default: result = DNS_R_UNKNOWN; break; \ } @@ -301,6 +305,7 @@ break; \ case 50: result = totext_nsec3(rdata, tctx, target); break; \ case 51: result = totext_nsec3param(rdata, tctx, target); break; \ + case 55: result = totext_hip(rdata, tctx, target); break; \ case 99: result = totext_spf(rdata, tctx, target); break; \ case 103: result = totext_unspec(rdata, tctx, target); break; \ case 249: result = totext_tkey(rdata, tctx, target); break; \ @@ -310,6 +315,7 @@ } \ break; \ case 32769: result = totext_dlv(rdata, tctx, target); break; \ + case 65533: result = totext_keydata(rdata, tctx, target); break; \ default: use_default = ISC_TRUE; break; \ } @@ -412,6 +418,7 @@ break; \ case 50: result = fromwire_nsec3(rdclass, type, source, dctx, options, target); break; \ case 51: result = fromwire_nsec3param(rdclass, type, source, dctx, options, target); break; \ + case 55: result = fromwire_hip(rdclass, type, source, dctx, options, target); break; \ case 99: result = fromwire_spf(rdclass, type, source, dctx, options, target); break; \ case 103: result = fromwire_unspec(rdclass, type, source, dctx, options, target); break; \ case 249: result = fromwire_tkey(rdclass, type, source, dctx, options, target); break; \ @@ -421,6 +428,7 @@ } \ break; \ case 32769: result = fromwire_dlv(rdclass, type, source, dctx, options, target); break; \ + case 65533: result = fromwire_keydata(rdclass, type, source, dctx, options, target); break; \ default: use_default = ISC_TRUE; break; \ } @@ -523,6 +531,7 @@ break; \ case 50: result = towire_nsec3(rdata, cctx, target); break; \ case 51: result = towire_nsec3param(rdata, cctx, target); break; \ + case 55: result = towire_hip(rdata, cctx, target); break; \ case 99: result = towire_spf(rdata, cctx, target); break; \ case 103: result = towire_unspec(rdata, cctx, target); break; \ case 249: result = towire_tkey(rdata, cctx, target); break; \ @@ -532,6 +541,7 @@ } \ break; \ case 32769: result = towire_dlv(rdata, cctx, target); break; \ + case 65533: result = towire_keydata(rdata, cctx, target); break; \ default: use_default = ISC_TRUE; break; \ } @@ -634,6 +644,7 @@ break; \ case 50: result = compare_nsec3(rdata1, rdata2); break; \ case 51: result = compare_nsec3param(rdata1, rdata2); break; \ + case 55: result = compare_hip(rdata1, rdata2); break; \ case 99: result = compare_spf(rdata1, rdata2); break; \ case 103: result = compare_unspec(rdata1, rdata2); break; \ case 249: result = compare_tkey(rdata1, rdata2); break; \ @@ -643,6 +654,120 @@ } \ break; \ case 32769: result = compare_dlv(rdata1, rdata2); break; \ + case 65533: result = compare_keydata(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } + +#define CASECOMPARESWITCH \ + switch (rdata1->type) { \ + case 1: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_a(rdata1, rdata2); break; \ + case 3: result = casecompare_ch_a(rdata1, rdata2); break; \ + case 4: result = casecompare_hs_a(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 2: result = casecompare_ns(rdata1, rdata2); break; \ + case 3: result = casecompare_md(rdata1, rdata2); break; \ + case 4: result = casecompare_mf(rdata1, rdata2); break; \ + case 5: result = casecompare_cname(rdata1, rdata2); break; \ + case 6: result = casecompare_soa(rdata1, rdata2); break; \ + case 7: result = casecompare_mb(rdata1, rdata2); break; \ + case 8: result = casecompare_mg(rdata1, rdata2); break; \ + case 9: result = casecompare_mr(rdata1, rdata2); break; \ + case 10: result = casecompare_null(rdata1, rdata2); break; \ + case 11: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_wks(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 12: result = casecompare_ptr(rdata1, rdata2); break; \ + case 13: result = casecompare_hinfo(rdata1, rdata2); break; \ + case 14: result = casecompare_minfo(rdata1, rdata2); break; \ + case 15: result = casecompare_mx(rdata1, rdata2); break; \ + case 16: result = casecompare_txt(rdata1, rdata2); break; \ + case 17: result = casecompare_rp(rdata1, rdata2); break; \ + case 18: result = casecompare_afsdb(rdata1, rdata2); break; \ + case 19: result = casecompare_x25(rdata1, rdata2); break; \ + case 20: result = casecompare_isdn(rdata1, rdata2); break; \ + case 21: result = casecompare_rt(rdata1, rdata2); break; \ + case 22: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_nsap(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 23: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_nsap_ptr(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 24: result = casecompare_sig(rdata1, rdata2); break; \ + case 25: result = casecompare_key(rdata1, rdata2); break; \ + case 26: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_px(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 27: result = casecompare_gpos(rdata1, rdata2); break; \ + case 28: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_aaaa(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 29: result = casecompare_loc(rdata1, rdata2); break; \ + case 30: result = casecompare_nxt(rdata1, rdata2); break; \ + case 33: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_srv(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 35: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_naptr(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 36: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_kx(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 37: result = casecompare_cert(rdata1, rdata2); break; \ + case 38: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_a6(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 39: result = casecompare_dname(rdata1, rdata2); break; \ + case 41: result = casecompare_opt(rdata1, rdata2); break; \ + case 42: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_apl(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 43: result = casecompare_ds(rdata1, rdata2); break; \ + case 44: result = casecompare_sshfp(rdata1, rdata2); break; \ + case 45: result = casecompare_ipseckey(rdata1, rdata2); break; \ + case 46: result = casecompare_rrsig(rdata1, rdata2); break; \ + case 47: result = casecompare_nsec(rdata1, rdata2); break; \ + case 48: result = casecompare_dnskey(rdata1, rdata2); break; \ + case 49: switch (rdata1->rdclass) { \ + case 1: result = casecompare_in_dhcid(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 50: result = casecompare_nsec3(rdata1, rdata2); break; \ + case 51: result = casecompare_nsec3param(rdata1, rdata2); break; \ + case 55: result = casecompare_hip(rdata1, rdata2); break; \ + case 99: result = casecompare_spf(rdata1, rdata2); break; \ + case 103: result = casecompare_unspec(rdata1, rdata2); break; \ + case 249: result = casecompare_tkey(rdata1, rdata2); break; \ + case 250: switch (rdata1->rdclass) { \ + case 255: result = casecompare_any_tsig(rdata1, rdata2); break; \ + default: use_default = ISC_TRUE; break; \ + } \ + break; \ + case 32769: result = casecompare_dlv(rdata1, rdata2); break; \ + case 65533: result = casecompare_keydata(rdata1, rdata2); break; \ default: use_default = ISC_TRUE; break; \ } @@ -745,6 +870,7 @@ break; \ case 50: result = fromstruct_nsec3(rdclass, type, source, target); break; \ case 51: result = fromstruct_nsec3param(rdclass, type, source, target); break; \ + case 55: result = fromstruct_hip(rdclass, type, source, target); break; \ case 99: result = fromstruct_spf(rdclass, type, source, target); break; \ case 103: result = fromstruct_unspec(rdclass, type, source, target); break; \ case 249: result = fromstruct_tkey(rdclass, type, source, target); break; \ @@ -754,6 +880,7 @@ } \ break; \ case 32769: result = fromstruct_dlv(rdclass, type, source, target); break; \ + case 65533: result = fromstruct_keydata(rdclass, type, source, target); break; \ default: use_default = ISC_TRUE; break; \ } @@ -856,6 +983,7 @@ break; \ case 50: result = tostruct_nsec3(rdata, target, mctx); break; \ case 51: result = tostruct_nsec3param(rdata, target, mctx); break; \ + case 55: result = tostruct_hip(rdata, target, mctx); break; \ case 99: result = tostruct_spf(rdata, target, mctx); break; \ case 103: result = tostruct_unspec(rdata, target, mctx); break; \ case 249: result = tostruct_tkey(rdata, target, mctx); break; \ @@ -865,6 +993,7 @@ } \ break; \ case 32769: result = tostruct_dlv(rdata, target, mctx); break; \ + case 65533: result = tostruct_keydata(rdata, target, mctx); break; \ default: use_default = ISC_TRUE; break; \ } @@ -967,6 +1096,7 @@ break; \ case 50: freestruct_nsec3(source); break; \ case 51: freestruct_nsec3param(source); break; \ + case 55: freestruct_hip(source); break; \ case 99: freestruct_spf(source); break; \ case 103: freestruct_unspec(source); break; \ case 249: freestruct_tkey(source); break; \ @@ -976,6 +1106,7 @@ } \ break; \ case 32769: freestruct_dlv(source); break; \ + case 65533: freestruct_keydata(source); break; \ default: break; \ } @@ -1078,6 +1209,7 @@ break; \ case 50: result = additionaldata_nsec3(rdata, add, arg); break; \ case 51: result = additionaldata_nsec3param(rdata, add, arg); break; \ + case 55: result = additionaldata_hip(rdata, add, arg); break; \ case 99: result = additionaldata_spf(rdata, add, arg); break; \ case 103: result = additionaldata_unspec(rdata, add, arg); break; \ case 249: result = additionaldata_tkey(rdata, add, arg); break; \ @@ -1087,6 +1219,7 @@ } \ break; \ case 32769: result = additionaldata_dlv(rdata, add, arg); break; \ + case 65533: result = additionaldata_keydata(rdata, add, arg); break; \ default: use_default = ISC_TRUE; break; \ } @@ -1189,6 +1322,7 @@ break; \ case 50: result = digest_nsec3(rdata, digest, arg); break; \ case 51: result = digest_nsec3param(rdata, digest, arg); break; \ + case 55: result = digest_hip(rdata, digest, arg); break; \ case 99: result = digest_spf(rdata, digest, arg); break; \ case 103: result = digest_unspec(rdata, digest, arg); break; \ case 249: result = digest_tkey(rdata, digest, arg); break; \ @@ -1198,6 +1332,7 @@ } \ break; \ case 32769: result = digest_dlv(rdata, digest, arg); break; \ + case 65533: result = digest_keydata(rdata, digest, arg); break; \ default: use_default = ISC_TRUE; break; \ } @@ -1300,6 +1435,7 @@ break; \ case 50: result = checkowner_nsec3(name, rdclass, type, wildcard); break; \ case 51: result = checkowner_nsec3param(name, rdclass, type, wildcard); break; \ + case 55: result = checkowner_hip(name, rdclass, type, wildcard); break; \ case 99: result = checkowner_spf(name, rdclass, type, wildcard); break; \ case 103: result = checkowner_unspec(name, rdclass, type, wildcard); break; \ case 249: result = checkowner_tkey(name, rdclass, type, wildcard); break; \ @@ -1309,6 +1445,7 @@ } \ break; \ case 32769: result = checkowner_dlv(name, rdclass, type, wildcard); break; \ + case 65533: result = checkowner_keydata(name, rdclass, type, wildcard); break; \ default: result = ISC_TRUE; break; \ } @@ -1411,6 +1548,7 @@ break; \ case 50: result = checknames_nsec3(rdata, owner, bad); break; \ case 51: result = checknames_nsec3param(rdata, owner, bad); break; \ + case 55: result = checknames_hip(rdata, owner, bad); break; \ case 99: result = checknames_spf(rdata, owner, bad); break; \ case 103: result = checknames_unspec(rdata, owner, bad); break; \ case 249: result = checknames_tkey(rdata, owner, bad); break; \ @@ -1420,6 +1558,7 @@ } \ break; \ case 32769: result = checknames_dlv(rdata, owner, bad); break; \ + case 65533: result = checknames_keydata(rdata, owner, bad); break; \ default: result = ISC_TRUE; break; \ } #define RDATATYPE_COMPARE(_s, _d, _tn, _n, _tp) \ @@ -1579,6 +1718,9 @@ case 233: \ RDATATYPE_COMPARE("nsec3", 50, _typename, _length, _typep); \ break; \ + case 208: \ + RDATATYPE_COMPARE("hip", 55, _typename, _length, _typep); \ + break; \ case 230: \ RDATATYPE_COMPARE("uinfo", 100, _typename, _length, _typep); \ break; \ @@ -1605,6 +1747,7 @@ break; \ case 50: \ RDATATYPE_COMPARE("maila", 254, _typename, _length, _typep); \ + RDATATYPE_COMPARE("keydata", 65533, _typename, _length, _typep); \ break; \ case 68: \ RDATATYPE_COMPARE("any", 255, _typename, _length, _typep); \ @@ -1663,6 +1806,7 @@ case 49: return (RRTYPE_DHCID_ATTRIBUTES); \ case 50: return (RRTYPE_NSEC3_ATTRIBUTES); \ case 51: return (RRTYPE_NSEC3PARAM_ATTRIBUTES); \ + case 55: return (RRTYPE_HIP_ATTRIBUTES); \ case 99: return (RRTYPE_SPF_ATTRIBUTES); \ case 100: return (DNS_RDATATYPEATTR_RESERVED); \ case 101: return (DNS_RDATATYPEATTR_RESERVED); \ @@ -1676,6 +1820,7 @@ case 254: return (DNS_RDATATYPEATTR_META | DNS_RDATATYPEATTR_QUESTIONONLY); \ case 255: return (DNS_RDATATYPEATTR_META | DNS_RDATATYPEATTR_QUESTIONONLY); \ case 32769: return (RRTYPE_DLV_ATTRIBUTES); \ + case 65533: return (RRTYPE_KEYDATA_ATTRIBUTES); \ } #define RDATATYPE_TOTEXT_SW \ switch (type) { \ @@ -1730,6 +1875,7 @@ case 49: return (str_totext("DHCID", target)); \ case 50: return (str_totext("NSEC3", target)); \ case 51: return (str_totext("NSEC3PARAM", target)); \ + case 55: return (str_totext("HIP", target)); \ case 99: return (str_totext("SPF", target)); \ case 100: return (str_totext("UINFO", target)); \ case 101: return (str_totext("UID", target)); \ @@ -1743,5 +1889,6 @@ case 254: return (str_totext("MAILA", target)); \ case 255: return (str_totext("ANY", target)); \ case 32769: return (str_totext("DLV", target)); \ + case 65533: return (str_totext("KEYDATA", target)); \ } #endif /* DNS_CODE_H */ |