Add an option to disable DNSCrypt, and do only TLS and relaying

packet-size
Frank Denis 5 years ago
parent 4d07e6c615
commit af22d59ce8

@ -27,6 +27,7 @@ pub struct MetricsConfig {
#[derive(Serialize, Deserialize, Debug, Clone)] #[derive(Serialize, Deserialize, Debug, Clone)]
pub struct DNSCryptConfig { pub struct DNSCryptConfig {
pub enabled: Option<bool>,
pub provider_name: String, pub provider_name: String,
pub key_cache_capacity: usize, pub key_cache_capacity: usize,
pub dnssec: bool, pub dnssec: bool,

@ -43,6 +43,7 @@ pub struct Globals {
pub blacklist: Option<BlackList>, pub blacklist: Option<BlackList>,
pub undelegated_list: Option<BlackList>, pub undelegated_list: Option<BlackList>,
pub ignore_unqualified_hostnames: bool, pub ignore_unqualified_hostnames: bool,
pub dnscrypt_enabled: bool,
pub anonymized_dns_enabled: bool, pub anonymized_dns_enabled: bool,
pub anonymized_dns_allowed_ports: Vec<u16>, pub anonymized_dns_allowed_ports: Vec<u16>,
pub anonymized_dns_allow_non_reserved_ports: bool, pub anonymized_dns_allow_non_reserved_ports: bool,

@ -181,6 +181,9 @@ async fn handle_client_query(
) )
.await; .await;
} }
if !globals.dnscrypt_enabled {
return Ok(());
}
let mut dnscrypt_encryption_params_set = vec![]; let mut dnscrypt_encryption_params_set = vec![];
for params in &**globals.dnscrypt_encryption_params_set.read() { for params in &**globals.dnscrypt_encryption_params_set.read() {
dnscrypt_encryption_params_set.push((*params).clone()) dnscrypt_encryption_params_set.push((*params).clone())
@ -490,7 +493,7 @@ fn main() -> Result<(), Error> {
let config_path = matches.value_of("config").unwrap(); let config_path = matches.value_of("config").unwrap();
let config = Config::from_path(config_path)?; let config = Config::from_path(config_path)?;
let dnscrypt_enabled = config.dnscrypt.enabled.unwrap_or(true);
let provider_name = match &config.dnscrypt.provider_name { let provider_name = match &config.dnscrypt.provider_name {
provider_name if provider_name.starts_with("2.dnscrypt-cert.") => provider_name.to_string(), provider_name if provider_name.starts_with("2.dnscrypt-cert.") => provider_name.to_string(),
provider_name => format!("2.dnscrypt-cert.{}", provider_name), provider_name => format!("2.dnscrypt-cert.{}", provider_name),
@ -678,6 +681,7 @@ fn main() -> Result<(), Error> {
blacklist, blacklist,
undelegated_list, undelegated_list,
ignore_unqualified_hostnames, ignore_unqualified_hostnames,
dnscrypt_enabled,
anonymized_dns_enabled, anonymized_dns_enabled,
anonymized_dns_allowed_ports, anonymized_dns_allowed_ports,
anonymized_dns_allow_non_reserved_ports, anonymized_dns_allow_non_reserved_ports,

Loading…
Cancel
Save