Skip to main content

ripestat_common/resources/
reverse_dns_consistency.rs

1use std::collections::HashMap;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
5pub struct ReverseDnsConsistencyRequest {
6    pub resource: String,
7    pub ipv4: Option<bool>,
8    pub ipv6: Option<bool>,
9}
10
11#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
12pub struct ReverseDnsConsistencyResponse {
13    pub prefixes: Prefixes,
14    pub query_time: String,
15    pub resource: String,
16    pub source: String,
17    pub ipv4: bool,
18    pub ipv6: bool,
19}
20
21#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
22pub struct Prefixes {
23    pub ipv4: HashMap<String,ReverseDnsPrefix>,
24    pub ipv6: HashMap<String,ReverseDnsPrefix>,
25}
26
27#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
28pub struct ReverseDnsPrefix {
29    pub complete: bool,
30    pub domains: Vec<Domain>,
31}
32
33#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
34pub struct Domain {
35    pub domain: String,
36    pub prefix: String,
37    pub found: bool,
38}