modified: Cargo.lock
modified: frida_core/src/linux_tun.rs
This commit is contained in:
parent
557a5a1558
commit
c3292a3f47
13
Cargo.lock
generated
13
Cargo.lock
generated
@ -1683,6 +1683,7 @@ dependencies = [
|
||||
"env_logger",
|
||||
"frida_core",
|
||||
"log",
|
||||
"network-interface",
|
||||
"tokio",
|
||||
"tokio-util",
|
||||
"x25519-dalek",
|
||||
@ -2805,6 +2806,18 @@ dependencies = [
|
||||
"jni-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "network-interface"
|
||||
version = "2.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "433419f898328beca4f2c6c73a1b52540658d92b0a99f0269330457e0fd998d5"
|
||||
dependencies = [
|
||||
"cc",
|
||||
"libc",
|
||||
"thiserror 1.0.69",
|
||||
"winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nix"
|
||||
version = "0.29.0"
|
||||
|
@ -7,13 +7,31 @@ use crate::device::AbstractDevice;
|
||||
use log::info;
|
||||
|
||||
pub fn create(cfg: AbstractDevice) -> (DeviceReader, DeviceWriter) {
|
||||
|
||||
let builder = Tun::builder();
|
||||
|
||||
if cfg.tun_name.is_some() {
|
||||
builder.name(&cfg.tun_name.unwrap());
|
||||
}
|
||||
|
||||
if cfg.mtu.is_some() {
|
||||
builder.mtu(cfg.mtu.unwrap().into());
|
||||
}
|
||||
|
||||
if cfg.address.is_some() {
|
||||
builder.address(cfg.address.unwrap());
|
||||
}
|
||||
|
||||
if cfg.netmask.is_some() {
|
||||
builder.netmask(cfg.netmask.unwrap());
|
||||
}
|
||||
|
||||
if cfg.destination.is_some() {
|
||||
builder.destination(cfg.destination.unwrap());
|
||||
}
|
||||
|
||||
let tun = Arc::new(
|
||||
Tun::builder()
|
||||
.name(&cfg.tun_name.unwrap()) // if name is empty, then it is set by kernel.
|
||||
.mtu(cfg.mtu.unwrap().into())
|
||||
.address(cfg.address.unwrap())
|
||||
.netmask(cfg.netmask.unwrap())
|
||||
.destination(cfg.destination.unwrap())
|
||||
builder
|
||||
.up() // or set it up manually using `sudo ip link set <tun-name> up`.
|
||||
.try_build() // or `.try_build_mq(queues)` for multi-queue support.
|
||||
.unwrap(),
|
||||
|
Loading…
x
Reference in New Issue
Block a user