Skip to content

Commit bddc2d6

Browse files
committed
add mtu to device trait
1 parent f439243 commit bddc2d6

File tree

9 files changed

+132
-170
lines changed

9 files changed

+132
-170
lines changed

Cargo.lock

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ ringbuf = "0.3"
4141
httparse = "1.8"
4242
async_smoltcp = { path = "async_smoltcp" }
4343
tokio-rustls = "0.25"
44-
rustls-pki-types = "1.1"
44+
rustls-pki-types = "1.2"
4545
futures = "0.3"
4646

4747
[dev-dependencies]

async_smoltcp/src/device.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,9 @@ fn is_private_v4(addr: IpAddress) -> bool {
9393
}
9494

9595
impl<'a, T: Tun + Clone> TunDevice<'a, T> {
96-
pub fn new(mtu: usize, tun: T) -> Self {
96+
pub fn new(tun: T) -> Self {
9797
let channel_buffer = 1024;
98+
let mtu = tun.mtu();
9899
let (tcp_sender, tcp_receiver) = channel(channel_buffer);
99100
let (udp_sender, udp_receiver) = channel(channel_buffer);
100101
let mut device = Self {

async_smoltcp/src/lib.rs

+6
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@ pub trait Tun {
2525

2626
/// Allocate a packet which can hold len bytes data.
2727
fn allocate_packet(&self, len: usize) -> std::io::Result<Self::Packet>;
28+
29+
/// Get the MTU of the tun device.
30+
fn mtu(&self) -> usize;
2831
}
2932

3033
impl<T> Tun for Arc<T>
@@ -41,6 +44,9 @@ where
4144
fn allocate_packet(&self, len: usize) -> std::io::Result<Self::Packet> {
4245
self.deref().allocate_packet(len)
4346
}
47+
fn mtu(&self) -> usize {
48+
self.deref().mtu()
49+
}
4450
}
4551

4652
pub trait Packet {

mobile2/backend/Cargo.lock

+7-62
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

mobile2/backend/Cargo.toml

+2-1
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@ serde_json = "1.0"
4040
serde = "1.0"
4141
lazy_static = "1.4"
4242
derive_more = "0.99"
43-
smoltcp = "0.10"
43+
smoltcp = "0.11.0"
4444
rustls = { version = "0.22", features = [] }
45+
rustls-pki-types = "1.2"
4546
itertools = "0.12.0"
4647
bytes = "1.5"
4748
crossbeam = "0.8"

mobile2/backend/gen/android/.idea/vcs.xml

-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)