Implement IP sink interface

This commit is contained in:
Aram 🍐 2021-10-16 19:38:47 -04:00
parent cfdbdc8f51
commit 2bcb9e714b
4 changed files with 82 additions and 6 deletions

View file

@ -22,6 +22,14 @@ impl VirtualIpDevice {
Ok(Self { wg, ip_dispatch_rx })
}
pub async fn new_sink(wg: Arc<WireGuardTunnel>) -> anyhow::Result<Self> {
let ip_dispatch_rx = wg
.register_sink_interface()
.await
.with_context(|| "Failed to register IP dispatch for sink virtual interface")?;
Ok(Self { wg, ip_dispatch_rx })
}
}
impl<'a> Device<'a> for VirtualIpDevice {