Skip to main content

DnsResolver

Trait DnsResolver 

Source
pub trait DnsResolver {
    // Required method
    fn resolve(&self, host: &str) -> Result<Vec<IpAddr>, DnsError>;
}
Expand description

Resolve hostnames to IP addresses.

New methods added to this trait will provide default implementations when possible so existing resolvers keep compiling.

§Examples

use barehttp::{DnsResolver, OsDnsResolver};

let ips = OsDnsResolver.resolve("example.com")?;
assert!(!ips.is_empty());

Required Methods§

Source

fn resolve(&self, host: &str) -> Result<Vec<IpAddr>, DnsError>

Look up host. An empty Vec means NXDOMAIN / no records.

§Errors

DnsError::ResolutionFailed when the OS resolver itself fails.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§