summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-05-28 14:44:18 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-05-29 13:58:25 +0000
commit7fc94b243295735f3e3e489c0abf40ba9170a54d (patch)
tree277b3c7b5a533a2925aac7866b9e57f1307301a8
parenta509502aface3cf9a0766db27cfecaec68b7655e (diff)
downloadmullvadvpn-7fc94b243295735f3e3e489c0abf40ba9170a54d.tar.xz
mullvadvpn-7fc94b243295735f3e3e489c0abf40ba9170a54d.zip
Add `Tun::bypass` Android-specific method
-rw-r--r--talpid-core/src/tunnel/tun_provider/mod.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/talpid-core/src/tunnel/tun_provider/mod.rs b/talpid-core/src/tunnel/tun_provider/mod.rs
index 69ff7d8b62..00c88cbfaa 100644
--- a/talpid-core/src/tunnel/tun_provider/mod.rs
+++ b/talpid-core/src/tunnel/tun_provider/mod.rs
@@ -3,6 +3,8 @@ use ipnetwork::IpNetwork;
use std::net::IpAddr;
#[cfg(unix)]
use std::os::unix::io::AsRawFd;
+#[cfg(target_os = "android")]
+use std::os::unix::io::RawFd;
use talpid_types::BoxedError;
cfg_if! {
@@ -32,6 +34,10 @@ cfg_if! {
pub trait Tun: AsRawFd + Send {
/// Retrieve the tunnel interface name.
fn interface_name(&self) -> &str;
+
+ /// Allow a socket to bypass the tunnel.
+ #[cfg(target_os = "android")]
+ fn bypass(&mut self, socket: RawFd) -> Result<(), BoxedError>;
}
/// Stub tunnel device.