GRPC Core  9.0.0
nameser.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright 2017 gRPC authors.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 #ifndef GRPC_CORE_LIB_IOMGR_NAMESER_H
20 #define GRPC_CORE_LIB_IOMGR_NAMESER_H
21 
23 
25 
26 #ifdef GRPC_HAVE_ARPA_NAMESER
27 
28 #include <arpa/nameser.h>
29 
30 #else /* GRPC_HAVE_ARPA_NAMESER */
31 
32 typedef enum __ns_class {
33  ns_c_invalid = 0, /* Cookie. */
34  ns_c_in = 1, /* Internet. */
35  ns_c_2 = 2, /* unallocated/unsupported. */
36  ns_c_chaos = 3, /* MIT Chaos-net. */
37  ns_c_hs = 4, /* MIT Hesiod. */
38  /* Query class values which do not appear in resource records */
39  ns_c_none = 254, /* for prereq. sections in update requests */
40  ns_c_any = 255, /* Wildcard match. */
41  ns_c_max = 65536
42 } ns_class;
43 
44 typedef enum __ns_type {
45  ns_t_invalid = 0, /* Cookie. */
46  ns_t_a = 1, /* Host address. */
47  ns_t_ns = 2, /* Authoritative server. */
48  ns_t_md = 3, /* Mail destination. */
49  ns_t_mf = 4, /* Mail forwarder. */
50  ns_t_cname = 5, /* Canonical name. */
51  ns_t_soa = 6, /* Start of authority zone. */
52  ns_t_mb = 7, /* Mailbox domain name. */
53  ns_t_mg = 8, /* Mail group member. */
54  ns_t_mr = 9, /* Mail rename name. */
55  ns_t_null = 10, /* Null resource record. */
56  ns_t_wks = 11, /* Well known service. */
57  ns_t_ptr = 12, /* Domain name pointer. */
58  ns_t_hinfo = 13, /* Host information. */
59  ns_t_minfo = 14, /* Mailbox information. */
60  ns_t_mx = 15, /* Mail routing information. */
61  ns_t_txt = 16, /* Text strings. */
62  ns_t_rp = 17, /* Responsible person. */
63  ns_t_afsdb = 18, /* AFS cell database. */
64  ns_t_x25 = 19, /* X_25 calling address. */
65  ns_t_isdn = 20, /* ISDN calling address. */
66  ns_t_rt = 21, /* Router. */
67  ns_t_nsap = 22, /* NSAP address. */
68  ns_t_nsap_ptr = 23, /* Reverse NSAP lookup (deprecated). */
69  ns_t_sig = 24, /* Security signature. */
70  ns_t_key = 25, /* Security key. */
71  ns_t_px = 26, /* X.400 mail mapping. */
72  ns_t_gpos = 27, /* Geographical position (withdrawn). */
73  ns_t_aaaa = 28, /* Ip6 Address. */
74  ns_t_loc = 29, /* Location Information. */
75  ns_t_nxt = 30, /* Next domain (security). */
76  ns_t_eid = 31, /* Endpoint identifier. */
77  ns_t_nimloc = 32, /* Nimrod Locator. */
78  ns_t_srv = 33, /* Server Selection. */
79  ns_t_atma = 34, /* ATM Address */
80  ns_t_naptr = 35, /* Naming Authority PoinTeR */
81  ns_t_kx = 36, /* Key Exchange */
82  ns_t_cert = 37, /* Certification record */
83  ns_t_a6 = 38, /* IPv6 address (deprecates AAAA) */
84  ns_t_dname = 39, /* Non-terminal DNAME (for IPv6) */
85  ns_t_sink = 40, /* Kitchen sink (experimentatl) */
86  ns_t_opt = 41, /* EDNS0 option (meta-RR) */
87  ns_t_apl = 42, /* Address prefix list (RFC3123) */
88  ns_t_ds = 43, /* Delegation Signer (RFC4034) */
89  ns_t_sshfp = 44, /* SSH Key Fingerprint (RFC4255) */
90  ns_t_rrsig = 46, /* Resource Record Signature (RFC4034) */
91  ns_t_nsec = 47, /* Next Secure (RFC4034) */
92  ns_t_dnskey = 48, /* DNS Public Key (RFC4034) */
93  ns_t_tkey = 249, /* Transaction key */
94  ns_t_tsig = 250, /* Transaction signature. */
95  ns_t_ixfr = 251, /* Incremental zone transfer. */
96  ns_t_axfr = 252, /* Transfer zone of authority. */
97  ns_t_mailb = 253, /* Transfer mailbox records. */
98  ns_t_maila = 254, /* Transfer mail agent records. */
99  ns_t_any = 255, /* Wildcard match. */
100  ns_t_zxfr = 256, /* BIND-specific, nonstandard. */
101  ns_t_max = 65536
102 } ns_type;
103 
104 #endif /* GRPC_HAVE_ARPA_NAMESER */
105 
106 #endif /* GRPC_CORE_LIB_IOMGR_NAMESER_H */
Definition: nameser.h:81
Definition: nameser.h:46
Definition: nameser.h:71
Definition: nameser.h:65
Definition: nameser.h:57
Definition: nameser.h:45
Definition: nameser.h:87
Definition: nameser.h:101
Definition: nameser.h:39
Definition: nameser.h:70
Definition: nameser.h:66
Definition: nameser.h:76
Definition: nameser.h:61
Definition: nameser.h:52
Definition: nameser.h:73
Definition: nameser.h:100
Definition: nameser.h:67
Definition: nameser.h:68
Definition: nameser.h:72
Definition: nameser.h:74
Definition: nameser.h:83
Definition: nameser.h:59
Definition: nameser.h:36
Definition: nameser.h:79
Definition: nameser.h:62
Definition: nameser.h:40
Definition: nameser.h:84
Definition: nameser.h:85
Definition: nameser.h:33
Definition: nameser.h:99
__ns_type
Definition: nameser.h:44
Definition: nameser.h:91
Definition: nameser.h:54
enum __ns_class ns_class
Definition: nameser.h:69
Definition: nameser.h:34
Definition: nameser.h:95
Definition: nameser.h:48
Definition: nameser.h:78
Definition: nameser.h:55
Definition: nameser.h:77
Definition: nameser.h:60
Definition: nameser.h:88
Definition: nameser.h:49
Definition: nameser.h:56
Definition: nameser.h:50
Definition: nameser.h:96
Definition: nameser.h:86
Definition: nameser.h:35
Definition: nameser.h:53
Definition: nameser.h:37
Definition: nameser.h:94
__ns_class
Definition: nameser.h:32
Definition: nameser.h:64
Definition: nameser.h:51
Definition: nameser.h:97
enum __ns_type ns_type
Definition: nameser.h:75
Definition: nameser.h:92
Definition: nameser.h:63
Definition: nameser.h:98
Definition: nameser.h:41
Definition: nameser.h:82
Definition: nameser.h:89
Definition: nameser.h:93
Definition: nameser.h:47
Definition: nameser.h:80
Definition: nameser.h:90
Definition: nameser.h:58