我想实现应该处理以下内容的WiFi管理程序。
推荐使用哪种C / C ++ WiFi库来实现这个目标?
答案 0 :(得分:4)
答案 1 :(得分:4)
在Fedora上(至少),与NetworkManager交互的首选方式是通过DBus。
虽然无线工具等可以工作 - 甚至直接内核调用,如果必须 - 还有一些问题:
您可以为您提到的所有任务发送和接收DBus消息,包括WiFi以及任意其他类型的网络接口。 API已发布here, for version 0.8。
对于较新的操作系统,显然有changes in the API, with a migration guide。
他们的wiki应该非常有帮助。
我知道Fedora和Ubuntu默认都使用NetworkManager;我相信很多其他系统也会这样做,但是没有详尽无遗的清单。
当然,如果您使用嵌入式系统,自定义发布或其他内容,那么您的里程可能会有所不同。
答案 2 :(得分:1)
我建议直接使用NetworkManager Library。
您可以使用低级D-Bus库或libnm-glib库,这样可以简化通信:example add connection glib
有关详细信息,您可以查看命令行客户端 nmcli 的代码。