Skip to main content

dns_update/providers/
mod.rs

1/*
2 * Copyright Stalwart Labs LLC See the COPYING
3 * file at the top-level directory of this distribution.
4 *
5 * Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 * https://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 * <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your
8 * option. This file may not be copied, modified, or distributed
9 * except according to those terms.
10 */
11
12use crate::DnsRecord;
13
14pub mod alidns;
15pub mod arvancloud;
16pub mod autodns;
17pub mod azuredns;
18pub mod baiducloud;
19pub mod bluecatv2;
20pub mod bunny;
21pub mod cloudflare;
22pub mod cloudns;
23pub mod constellix;
24pub mod cpanel;
25pub mod ddnss;
26pub mod desec;
27pub mod digitalocean;
28pub mod dnsimple;
29pub mod dnsmadeeasy;
30pub mod domeneshop;
31pub mod dreamhost;
32pub mod duckdns;
33pub mod dynu;
34pub mod easydns;
35pub mod edgedns;
36pub mod exoscale;
37pub mod freemyip;
38pub mod gandiv5;
39pub mod gcore;
40pub mod glesys;
41pub mod godaddy;
42pub mod google_cloud_dns;
43pub mod hetzner;
44pub mod hostingde;
45pub mod hostinger;
46pub mod huaweicloud;
47pub mod hurricane;
48pub mod ibmcloud;
49#[cfg(feature = "test_provider")]
50pub mod in_memory;
51pub mod infoblox;
52pub mod infomaniak;
53pub mod inwx;
54pub mod ionos;
55pub mod ipv64;
56pub mod joker;
57pub mod lightsail;
58pub mod linode;
59pub mod luadns;
60pub mod mythicbeasts;
61pub mod namecheap;
62pub mod namedotcom;
63pub mod namesilo;
64pub mod netcup;
65pub mod netlify;
66pub mod nifcloud;
67pub mod ns1;
68#[cfg(any(feature = "ring", feature = "aws-lc-rs"))]
69pub mod oraclecloud;
70pub mod ovh;
71#[cfg(feature = "test_provider")]
72pub mod pebble;
73pub mod plesk;
74pub mod porkbun;
75pub mod rfc2136;
76pub mod route53;
77pub mod safedns;
78pub mod scaleway;
79pub mod spaceship;
80pub mod tencentcloud;
81#[cfg(any(feature = "ring", feature = "aws-lc-rs"))]
82pub mod transip;
83pub mod ultradns;
84pub mod vercel;
85#[cfg(any(feature = "ring", feature = "aws-lc-rs"))]
86pub mod volcengine;
87pub mod vultr;
88pub mod websupport;
89#[cfg(any(feature = "ring", feature = "aws-lc-rs"))]
90pub mod yandexcloud;
91
92impl DnsRecord {
93    pub fn priority(&self) -> Option<u16> {
94        match self {
95            DnsRecord::MX(record) => Some(record.priority),
96            DnsRecord::SRV(record) => Some(record.priority),
97            _ => None,
98        }
99    }
100}