哪个API在linux中提供无线网络通知?

时间:2009-05-07 16:45:19

标签: linux networking wireless notifications

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

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

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

2 个答案:

答案 0 :(得分:3)

如果NetworkManager正在运行,可以通过DBUS API访问它 - 请参阅WirelessNetworkAppearedWirelessNetworkDisappeared事件。

否则,您必须自己处理wext(这是NM在其下使用的内容),您对IWEVREGISTEREDIWEVEXPIRED事件感到兴趣{ {3}}界面。

答案 1 :(得分:1)

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

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