3

ネットワーク カードが利用可能なネットワークに関する新しい情報を送信するたびに、何らかのコールバックを起動したいと考えています。自分で情報をポーリングする必要があるかどうかも気にしません。iwlist scan last毎秒" " を生成することに頼りたくないだけですが、まさに必要な情報 (ネットワーク名 + チャネル + 暗号化タイプ) です。

そのような機能を実装するライブラリはありますか? (または、それを行うための ioctl 呼び出しがいくつかありますか?)

それが重要な場合、私は ndiswrapper モジュールにのみ興味があります。

4

2 に答える 2

3

NetworkManager が実行されている場合、DBUS APIWirelessNetworkAppearedを介してアクセスできます。およびWirelessNetworkDisappearedイベントを参照してください。

それ以外の場合は、自分でwextを処理する必要があります (これは NM が下で使用するものです) 。NETLINK_ROUTEインターフェースを介してやってくるIWEVREGISTEREDおよびIWEVEXPIREDイベントに興味があるでしょう。

于 2009-05-07T17:05:08.413 に答える
1

DBUS を使用したくない場合は/etc/NetworkManager/dispatcher.d/、特定のイベントで NetworkManager によって呼び出されるスクリプト/プログラムを にドロップすることもできます。

man 8 NetworkManagerスクリプトに渡されるイベントと引数のタイプについては、「 」を参照してください。ただし、スクリプトは として実行されますがroot、これはあなたが望むものではないかもしれません.

于 2009-05-07T22:25:04.087 に答える