2011-02-24 25 views
9

我和我的團隊正在基於無人機Parrot API的項目中工作。 我們試圖找到一個API來編寫一個可以掃描無線網絡並選擇無人機ESSID的小程序。我們的主要語言是C,但Java也很受讚賞。適用於C或Java的Linux無線API

我試圖看看是否存在iwlist/iwconfig命令的任何API,但我沒有找到任何東西。 有人可以幫我嗎?任何示例(代碼示例)也將被讚賞。

格拉西亞斯

回答

8

隨着新的內核,用於管理無線網卡的框架被稱爲nl80211。它基於netlink,因此您可以使用libnl來發出命令並解析答案。更多信息:

http://wireless.kernel.org/en/developers/Documentation/nl80211

目前IW是命令行實用工具,利用nl80211,所以你可以列出可用的硬件,掃描等:

http://linuxwireless.org/en/users/Documentation/iw

它的源代碼是很容易在自己的項目中學習和重用,只需查看他們的git repo。