9 个版本 (5 个破坏性更新)

0.6.0 2019 年 1 月 20 日
0.5.2 2017 年 12 月 4 日
0.5.0 2017 年 11 月 26 日
0.4.0 2017 年 11 月 25 日
0.1.1 2017 年 11 月 25 日

#143 in macOS 和 iOS API

Download history 1/week @ 2023-11-06 2/week @ 2023-11-13 19/week @ 2023-11-20 29/week @ 2023-11-27 9/week @ 2023-12-11 19/week @ 2023-12-25 9/week @ 2024-01-01 1/week @ 2024-01-08 11/week @ 2024-01-15 7/week @ 2024-01-22 18/week @ 2024-01-29 1/week @ 2024-02-05 32/week @ 2024-02-12 200/week @ 2024-02-19

每月下载量 251

MIT 许可证

5KB
89 行代码(不包括注释)

mac_utun

在 macOS 上创建 utun 设备。

用法

在 Cargo.toml 中包含

mac_utun = "0.6"

导入 get_utun 函数

use mac_utun::get_utun;

只需调用此函数。它将从 0 开始搜索第一个可用的 utun 设备。正如您所知,创建 utun 设备需要 root 权限。

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

如果出错,将返回最后一个 OS-Error。如果成功,将返回一个 UDP-socket 和接口名称(例如 "utun0")。

UDP-socket 是一个不错的选择,因为 Rust 将自行执行必要的清理。

测试

只有一个测试用例定义

它检查在 utun 打开前后网络接口的列表。预期行为:返回的 utun 仅在 utun 打开时出现在列表中。

贡献

感谢 Feng Yingcai 的 pull request

无运行时依赖

~175KB