#nftables #netfilter #firewall #iptables #nft

sys no-std nftnl-sys

libnftnl 底层 FFI 绑定。为内核 nf_tables 子系统提供低级用户空间访问。

7 个版本 (重大变更)

0.6.1 2022年2月11日
0.6.0 2020年11月23日
0.5.0 2020年6月4日
0.4.0 2020年5月27日
0.1.0 2018年9月19日

#738 in Unix API

Download history 4799/week @ 2024-03-14 7061/week @ 2024-03-21 3311/week @ 2024-03-28 4406/week @ 2024-04-04 5039/week @ 2024-04-11 3501/week @ 2024-04-18 3915/week @ 2024-04-25 4108/week @ 2024-05-02 3894/week @ 2024-05-09 5642/week @ 2024-05-16 4484/week @ 2024-05-23 3626/week @ 2024-05-30 3286/week @ 2024-06-06 4210/week @ 2024-06-13 4251/week @ 2024-06-20 2273/week @ 2024-06-27

每月下载 14,729
nftnl 中使用

MIT/Apache

290KB
6.5K SLoC

nftnl-sys

libnftnl 底层 FFI 绑定,libnftnl 是一个提供低级 netlink 编程接口 (API) 的用户空间库,用于内核 nf_tables 子系统。

查看 nftnl 了解更高级别的安全抽象。

链接到 libmnl 和 libnftnl

默认情况下,此软件包使用 pkg-config 来查找和链接到其 C 依赖项,libmnllibnftnl。要手动配置查找这些库的位置,请设置环境变量 LIBMNL_LIB_DIRLIBNFTNL_LIB_DIR 指向 libmnl.so(或 libmnl.a)和 libnftnl.so(或 libnftnl.a)所在的目录。

选择 libnftnl 版本

此软件包为大多数 libnftnl 版本提供了绑定。所有绑定都是通过在此存储库中的 generate_bindings.sh 脚本由 bindgen 生成的。

此crate只能通过一种版本的libnftnl暴露。默认情况下,crate导出对支持的最老版本(libnftnl-1.0.6)的绑定。要获取更高版本的版本,请激活相应的功能。有关可用的功能/版本,请参阅Cargo.toml

例如,要获取到libnftnl-1.0.9的绑定,请像这样依赖此crate

[dependencies]
nftnl-sys = { version = "0.1", features = ["nftnl-1-0-9"] }

许可证:MIT/Apache-2.0

依赖项