1#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DnsLookupResult {
17 #[serde(rename = "name")]
18 pub name: String,
19 #[serde(rename = "recordEntries")]
20 pub record_entries: Vec<String>,
21 #[serde(rename = "recordType")]
22 pub record_type: RecordType,
23 #[serde(rename = "ttl")]
24 pub ttl: i64,
25}
26
27impl DnsLookupResult {
28 pub fn new(name: String, record_entries: Vec<String>, record_type: RecordType, ttl: i64) -> DnsLookupResult {
30 DnsLookupResult {
31 name,
32 record_entries,
33 record_type,
34 ttl,
35 }
36 }
37}
38
39#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
41pub enum RecordType {
42 #[serde(rename = "A")]
43 A,
44 #[serde(rename = "NS")]
45 NS,
46 #[serde(rename = "MD")]
47 MD,
48 #[serde(rename = "MF")]
49 MF,
50 #[serde(rename = "CNAME")]
51 CNAME,
52 #[serde(rename = "SOA")]
53 SOA,
54 #[serde(rename = "MB")]
55 MB,
56 #[serde(rename = "MG")]
57 MG,
58 #[serde(rename = "MR")]
59 MR,
60 #[serde(rename = "NULL")]
61 NULL,
62 #[serde(rename = "WKS")]
63 WKS,
64 #[serde(rename = "PTR")]
65 PTR,
66 #[serde(rename = "HINFO")]
67 HINFO,
68 #[serde(rename = "MINFO")]
69 MINFO,
70 #[serde(rename = "MX")]
71 MX,
72 #[serde(rename = "TXT")]
73 TXT,
74 #[serde(rename = "RP")]
75 RP,
76 #[serde(rename = "AFSDB")]
77 AFSDB,
78 #[serde(rename = "X25")]
79 X25,
80 #[serde(rename = "ISDN")]
81 ISDN,
82 #[serde(rename = "RT")]
83 RT,
84 #[serde(rename = "NSAP")]
85 NSAP,
86 #[serde(rename = "NSAP_PTR")]
87 NSAPPTR,
88 #[serde(rename = "SIG")]
89 SIG,
90 #[serde(rename = "KEY")]
91 KEY,
92 #[serde(rename = "PX")]
93 PX,
94 #[serde(rename = "GPOS")]
95 GPOS,
96 #[serde(rename = "AAAA")]
97 AAAA,
98 #[serde(rename = "LOC")]
99 LOC,
100 #[serde(rename = "NXT")]
101 NXT,
102 #[serde(rename = "EID")]
103 EID,
104 #[serde(rename = "NIMLOC")]
105 NIMLOC,
106 #[serde(rename = "SRV")]
107 SRV,
108 #[serde(rename = "ATMA")]
109 ATMA,
110 #[serde(rename = "NAPTR")]
111 NAPTR,
112 #[serde(rename = "KX")]
113 KX,
114 #[serde(rename = "CERT")]
115 CERT,
116 #[serde(rename = "A6")]
117 A6,
118 #[serde(rename = "DNAME")]
119 DNAME,
120 #[serde(rename = "SINK")]
121 SINK,
122 #[serde(rename = "OPT")]
123 OPT,
124 #[serde(rename = "APL")]
125 APL,
126 #[serde(rename = "DS")]
127 DS,
128 #[serde(rename = "SSHFP")]
129 SSHFP,
130 #[serde(rename = "IPSECKEY")]
131 IPSECKEY,
132 #[serde(rename = "RRSIG")]
133 RRSIG,
134 #[serde(rename = "NSEC")]
135 NSEC,
136 #[serde(rename = "DNSKEY")]
137 DNSKEY,
138 #[serde(rename = "DHCID")]
139 DHCID,
140 #[serde(rename = "NSEC3")]
141 NSEC3,
142 #[serde(rename = "NSEC3PARAM")]
143 NSEC3PARAM,
144 #[serde(rename = "TLSA")]
145 TLSA,
146 #[serde(rename = "SMIMEA")]
147 SMIMEA,
148 #[serde(rename = "HIP")]
149 HIP,
150 #[serde(rename = "NINFO")]
151 NINFO,
152 #[serde(rename = "RKEY")]
153 RKEY,
154 #[serde(rename = "TALINK")]
155 TALINK,
156 #[serde(rename = "CDS")]
157 CDS,
158 #[serde(rename = "CDNSKEY")]
159 CDNSKEY,
160 #[serde(rename = "OPENPGPKEY")]
161 OPENPGPKEY,
162 #[serde(rename = "CSYNC")]
163 CSYNC,
164 #[serde(rename = "ZONEMD")]
165 ZONEMD,
166 #[serde(rename = "SVCB")]
167 SVCB,
168 #[serde(rename = "HTTPS")]
169 HTTPS,
170 #[serde(rename = "SPF")]
171 SPF,
172 #[serde(rename = "UINFO")]
173 UINFO,
174 #[serde(rename = "UID")]
175 UID,
176 #[serde(rename = "GID")]
177 GID,
178 #[serde(rename = "UNSPEC")]
179 UNSPEC,
180 #[serde(rename = "NID")]
181 NID,
182 #[serde(rename = "L32")]
183 L32,
184 #[serde(rename = "L64")]
185 L64,
186 #[serde(rename = "LP")]
187 LP,
188 #[serde(rename = "EUI48")]
189 EUI48,
190 #[serde(rename = "EUI64")]
191 EUI64,
192 #[serde(rename = "TKEY")]
193 TKEY,
194 #[serde(rename = "TSIG")]
195 TSIG,
196 #[serde(rename = "IXFR")]
197 IXFR,
198 #[serde(rename = "AXFR")]
199 AXFR,
200 #[serde(rename = "MAILB")]
201 MAILB,
202 #[serde(rename = "MAILA")]
203 MAILA,
204 #[serde(rename = "ANY")]
205 ANY,
206 #[serde(rename = "URI")]
207 URI,
208 #[serde(rename = "CAA")]
209 CAA,
210 #[serde(rename = "AVC")]
211 AVC,
212 #[serde(rename = "DOA")]
213 DOA,
214 #[serde(rename = "AMTRELAY")]
215 AMTRELAY,
216 #[serde(rename = "TA")]
217 TA,
218 #[serde(rename = "DLV")]
219 DLV,
220}
221