diff --git a/protocol/raw/src/forward.rs b/protocol/raw/src/forward.rs index f60fee37..338e64a1 100644 --- a/protocol/raw/src/forward.rs +++ b/protocol/raw/src/forward.rs @@ -71,7 +71,7 @@ impl Forward { async fn serve_udp(&self, raw: RawSocket) -> Result<()> { let source = source::Source::new(raw, self.ip_cidr); - forward_udp::forward_udp(source, self.net.clone()).await?; + forward_udp::forward_udp(source, self.net.clone(), None).await?; Ok(()) } diff --git a/protocol/raw/src/gateway.rs b/protocol/raw/src/gateway.rs index 91a81eeb..cc804dbe 100644 --- a/protocol/raw/src/gateway.rs +++ b/protocol/raw/src/gateway.rs @@ -36,15 +36,18 @@ pub struct GatewayDevice { layer: Layer, } -impl GatewayDevice { +impl GatewayDevice +where + I: AsyncDevice, +{ pub fn new( inner: I, ethernet_addr: EthernetAddress, lru_size: usize, ip_cidr: IpCidr, override_v4: SocketAddrV4, - layer: Layer, ) -> GatewayDevice { + let layer = inner.capabilities().medium.into(); GatewayDevice { inner, ethernet_addr, diff --git a/protocol/raw/src/net.rs b/protocol/raw/src/net.rs index 781387a9..bea44ce8 100644 --- a/protocol/raw/src/net.rs +++ b/protocol/raw/src/net.rs @@ -16,7 +16,6 @@ use rd_interface::{ }; use tokio::{sync::Mutex, task::JoinHandle}; use tokio_smoltcp::{ - device::AsyncDevice, smoltcp::wire::{IpAddress, IpCidr}, BufferSize, Net as SmoltcpNet, NetConfig, }; @@ -63,8 +62,7 @@ impl RawNet { let mut forward_handle = None; let smoltcp_net = if config.forward { - let layer = device.capabilities().medium.into(); - let device = GatewayDevice::new(device, ethernet_addr, 100, ip_cidr, ip_addr, layer); + let device = GatewayDevice::new(device, ethernet_addr, 100, ip_cidr, ip_addr); let map = device.get_map(); let smoltcp_net = Arc::new(SmoltcpNet::new(device, net_config)); diff --git a/protocol/ss/src/server.rs b/protocol/ss/src/server.rs index ae3c93a9..139b9dc3 100644 --- a/protocol/ss/src/server.rs +++ b/protocol/ss/src/server.rs @@ -66,6 +66,7 @@ impl SSServer { udp_listener, ), self.net.clone(), + None, ) .await?; diff --git a/rabbit-digger b/rabbit-digger index 3dd430f6..aebe43ad 160000 --- a/rabbit-digger +++ b/rabbit-digger @@ -1 +1 @@ -Subproject commit 3dd430f62ba047acb585d991ead8368b0a51dd79 +Subproject commit aebe43ad661e48f36947c18e56264efcf7492f27