Work around issue with ipv6 dns resolvers

This commit is contained in:
kpcyrd
2020-03-21 18:23:53 +01:00
parent baeb200a1c
commit 896e13373e
9 changed files with 261 additions and 264 deletions

495
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -41,8 +41,8 @@ dirs = "2.0"
url = "2.0"
percent-encoding = "2.1"
#chrootable-https = { path = "../chrootable-https" }
chrootable-https = "0.14"
base64 = "0.11"
chrootable-https = "0.15"
base64 = "0.12"
data-encoding = "2.1.2"
serde_urlencoded = "0.6"
serde = "1.0"
@@ -62,8 +62,8 @@ semver = "0.9"
bytes = "0.4"
bytesize = "1.0"
ipnetwork = "0.16"
strum = "0.17"
strum_macros = "0.17"
strum = "0.18"
strum_macros = "0.18"
embedded-triple = "0.1.0"
digest = "0.8.0"

View File

@@ -24,7 +24,7 @@ serde_urlencoded = "0.6"
webpki = "0.21"
webpki-roots = "0.19.0"
ct-logs = "0.6"
chrootable-https = "0.14"
chrootable-https = "0.15"
http = "0.2"
bufstream = "0.1.4"
pem = "0.7"
@@ -38,7 +38,7 @@ publicsuffix = { version="1.5", default-features=false }
xml-rs = "0.8"
geo = "0.12"
bytes = "0.4"
base64 = "0.11"
base64 = "0.12"
chrono = { version = "0.4", features = ["serde"] }
mqtt-protocol = "0.8.1"
sodiumoxide = { version="0.2.5", features=["use-pkg-config"] }

View File

@@ -205,7 +205,7 @@ mod tests {
use chrootable_https::dns::Resolver;
fn connect() -> Result<MqttClient> {
let resolver = Resolver::from_system().unwrap();
let resolver = Resolver::from_system_v4().unwrap();
let url = "mqtt://mqtt.winkekatze24.de".parse()?;
MqttClient::connect(&resolver, url, &MqttOptions::default())
}

View File

@@ -364,7 +364,7 @@ mod tests {
#[ignore]
#[test]
fn verify_tls_good() {
let resolver = Resolver::from_system().unwrap();
let resolver = Resolver::from_system_v4().unwrap();
let _sock = Socket::connect(&resolver, "badssl.com", 443, &SocketOptions{
tls: true,
..Default::default()
@@ -374,7 +374,7 @@ mod tests {
#[test]
#[ignore]
fn verify_tls_good_request() {
let resolver = Resolver::from_system().unwrap();
let resolver = Resolver::from_system_v4().unwrap();
let mut sock = Socket::connect(&resolver, "badssl.com", 443, &SocketOptions{
tls: true,
..Default::default()
@@ -387,7 +387,7 @@ mod tests {
#[test]
#[ignore]
fn verify_tls_expired() {
let resolver = Resolver::from_system().unwrap();
let resolver = Resolver::from_system_v4().unwrap();
let sock = Socket::connect(&resolver, "expired.badssl.com", 443, &SocketOptions{
tls: true,
..Default::default()
@@ -401,7 +401,7 @@ mod tests {
#[test]
#[ignore]
fn verify_tls_1_1_1_1() {
let resolver = Resolver::from_system().unwrap();
let resolver = Resolver::from_system_v4().unwrap();
let _sock = Socket::connect(&resolver, "1.1.1.1", 443, &SocketOptions{
tls: true,
..Default::default()

View File

@@ -159,7 +159,7 @@ pub fn dump_sandbox_init_msg(rl: &mut Shell, params: Params, options: HashMap<St
prepare_keyring(rl.keyring_mut(), &module, &params)?;
let keyring = rl.keyring().request_keys(&module);
let dns_config = Resolver::from_system()?;
let dns_config = Resolver::from_system_v4()?;
let proxy = rl.config().network.proxy.clone();
let args = get_args(rl, &module)?;

View File

@@ -656,7 +656,7 @@ impl Script {
use crate::geoip::Maxmind;
use crate::paths;
let keyring = Vec::new();
let dns_config = Resolver::from_system()?;
let dns_config = Resolver::from_system_v4()?;
let proxy = None;
let psl = PslReader::String(r#"
// ===BEGIN ICANN DOMAINS===

View File

@@ -111,7 +111,7 @@ pub fn run(module: Module,
options: HashMap<String, String>,
blobs: Vec<Blob>,
) -> Result<ExitEvent> {
let dns_config = Resolver::from_system()?;
let dns_config = Resolver::from_system_v4()?;
let mut reader = if has_stdin {
Some(BufReader::new(stdin()))

View File

@@ -82,7 +82,7 @@ impl<'a> Repl<'a> {
pub fn run(config: &Config) -> Result<()> {
let keyring = Vec::new();
let dns_config = Resolver::from_system()?;
let dns_config = Resolver::from_system_v4()?;
let proxy = config.network.proxy;
let cache_dir = paths::cache_dir()?;