7个版本

0.7.0-pre.12024年1月28日
0.6.1 2024年1月28日
0.5.3 2024年1月28日

#282 in Unix API

Download history 2/week @ 2024-03-12 11/week @ 2024-03-19 27/week @ 2024-03-26 22/week @ 2024-04-02 29/week @ 2024-04-09 6/week @ 2024-04-23 68/week @ 2024-04-30 4/week @ 2024-05-07 7/week @ 2024-05-21

53每月下载次数

MIT/Apache

320KB
6.5K SLoC

NetworkManager的Rust绑定(分支)

@passcod分支以重写一些API,使其更易用。

NetworkManager的Rust绑定,使用D-Bus消息总线系统

状态

该项目仍在开发中。当前已实现的部件可以在文档中找到。

  • NetworkManager D-Bus API >= v1.42.2

用法

使用以下命令将networkmanager添加到您的Cargo.toml

[dependencies]
networkmanager = { package = "passcod-networkmanager", version = "=0.7.0-pre.1" }
tokio = { version = "1", features = ["full"] }

示例

use networkmanager::{Error, NetworkManager};

#[tokio::main]
async fn main() -> Result<(), Error> {
    let nm = NetworkManager::new().await?;

    for dev in nm.get_devices().await? {
        if let Some(wifi) = dev.to_wireless().await? {
            println!("Bitrate: {:?}", wifi.bitrate().await?);
            wifi.request_scan().await?;
            for ap in wifi.get_all_access_points().await? {
                let raw = ap.ssid().await?;
                println!("SSID: {} {raw:02x?}", String::from_utf8_lossy(&raw));
            }
        }
    }

    Ok(())
}

构建前提条件

  • Debian及其衍生版(例如Ubuntu)

    • network-manager
    • libdbus-1-dev
    • pkg-config
  • Fedora

    • NetworkManager
    • dbus-devel
    • pkg-config

待办事项

  • 实现
    • 设备
      • 顶级
      • 通用
      • 无线
      • 有线
      • ADSL
      • 蓝牙
      • Bond
      • 桥接
      • 虚拟
      • Infiniband
      • IpTunnel
      • Lowpan
      • Macsec
      • MacVLAN
      • 调制解调器
      • OLPCMesh
      • OVSBridge
      • OVSInterface
      • OVSPort
      • PPP
      • 统计信息
      • 团队
      • TUN/TAP
      • VETH
      • VLAN
      • VRF
      • VXLAN
      • WifiP2P
      • WiMax
      • Wireguard
      • Wpan
    • 配置
      • IP4
      • IP6
      • DHCP4
      • DHCP6
    • 接入点
    • 连接活动
    • NetworkManager(部分实现)
    • 代理管理器
    • 检查点
    • DNS管理器
    • PPP
    • 密钥代理
    • 设置
    • 设置连接
    • VPN连接
    • VPN插件
    • WifiP2P
    • WiMax NSP

许可证

根据您的选择,许可方式为以下之一

贡献

除非您明确说明,否则您根据Apache-2.0许可定义的任何有意提交以包含在作品中的贡献,将以上双重许可,不附加任何额外条款或条件。

依赖关系

~12–23MB
~356K SLoC