一尘不染

适用于C或Java的Linux的无线API

linux

我的团队和我正在基于无人机Parrot
API的项目中工作。我们正在尝试找到一个API,以编写一个可以扫描无线网络并选择无人机ESSID的小程序。我们的主要语言是C,但Java也受到赞赏。

我试图查看iwlist / iwconfig命令是否存在任何API,但没有找到任何东西。有人可以帮我吗?任何示例(代码示例)也将不胜感激。

格拉西亚斯


阅读 509

收藏
2020-06-07

共1个答案

一尘不染

使用较新的内核,用于管理无线卡的框架称为 nl80211 。它基于netlink,因此您可以使用 libnl 发出命令并解析答案。更多信息:

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

当前, iw 是利用nl80211的命令行实用程序,因此您可以列出可用的硬件,扫描等:

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

它的源代码很容易学习,并且可以在您自己的项目中重复使用,只需查看其git repo。

2020-06-07