Skip to content

Latest commit

 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mac_utun

Create utun device on macos.

Usage

In Cargo.toml include:

mac_utun = "0.6"

Import the get_utun function:

use mac_utun::get_utun;

Just need to call this function. It will search for the first available utun-device starting from 0. As you may know, root permission is necessary to create a utun-device.

pub fn get_utun() -> Result<(UdpSocket,String)>

In case of error, the last OS-Error will be returned. In case of success, an UDP-socket and the interface name (e.g. "utun0") will be returned.

UDP-socket is a nice choice, because rust will perform the necessary clean up itself.

Test

There is only one test case defined:

It checks the list of network interfaces before, during and after utun is opened. Expected behaviour: The returned utun is only in the list during utun is opened.

Contributions

Thanks for pull request from Feng Yingcai

About

Create macOS utun device from rust

Resources

Stars

22 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages