每当我的网卡发送有关可用网络的新信息时,我想发起一些回调。如果我需要自己查询信息,我真的不介意。我只是不想依赖于产生“ iwlist scan last ”每一秒,但这正是我需要的信息(网络名称+频道+加密类型)。

是否有一个实现类似功能的库? (或者有一些ioctl调用吗?)

如果重要的话,我只对ndiswrapper模块感兴趣。

有帮助吗?

解决方案

如果NetworkManager正在运行,可通过其 DBUS API <访问/ a> - 请参阅 WirelessNetworkAppeared WirelessNetworkDisappeared 事件。

否则,您将不得不处理 wext 你自己(这是NM在下面使用的),你会对 IWEVREGISTERED 和来自 NETLINK_ROUTE 界面的 IWEVEXPIRED 事件。

其他提示

如果您不想使用DBUS,您也可以将脚本/程序放入 /etc/NetworkManager/dispatcher.d/ ,在某些事件中NetworkManager将调用它

请参阅“ man 8 NetworkManager ”对于传递给脚本的事件和参数的类型。 该脚本将作为 root 执行,但可能不是您想要的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top