pub trait WireguardDevice {
    fn check_device(&self) -> BoxResult<bool>;
fn bring_up_device(&self) -> BoxResult<()>;
fn take_down_device(&self) -> BoxResult<()>;
fn set_ip(&mut self, ip: &Ipv4Addr, subnet: &Ipv4Net) -> BoxResult<()>;
fn add_route(&self, route: &str, gateway: Option<Ipv4Addr>) -> BoxResult<()>;
fn replace_route(
        &self,
        route: &str,
        gateway: Option<Ipv4Addr>
    ) -> BoxResult<()>;
fn del_route(&self, route: &str, gateway: Option<Ipv4Addr>) -> BoxResult<()>;
fn set_conf(&self, conf: &str) -> BoxResult<()>;
fn sync_conf(&self, conf: &str) -> BoxResult<()>;
fn flush_all(&self) -> BoxResult<()>;
fn retrieve_conf(&self) -> BoxResult<HashMap<String, SocketAddr>>;
fn create_key_pair(&self) -> BoxResult<(String, String)>; }

Required methods

Implementors