wpa_supplicant的控制接口简单说明

本文详细介绍了如何利用wpa_supplicant的API在STA模式下连接WiFi热点,包括wpa_ctrl_open、wpa_ctrl_attach等函数的使用,并提供了代码示例展示连接、监听事件通知的实现。同时,强调了事件通知的重要性以及处理命令的时机选择。

目录

1 说明

2 参考

2.1 函数基本说明

2.2 逻辑说明

3 应用程序的处理

3.1 事件通知消息说明

3.2 代码示例


1 说明

本文旨在用wpa_supplicant提供的API控制wifi模块以STA工作模式连接热点。wpa_supplicant程序一般运行在后台(./wpa_supplicant -B -cwpa_0_8.conf -iwlan0),用户通过它提供的接口让它做各种连接操作。

2 参考

http://w1.fi/wpa_supplicant/devel/wpa__ctrl_8h.html#a4e48c0a662d9150ea603e75365748b0b

wpa_supplicant-devel.pdf

https://www.kancloud.cn/alex_wsc/android-wifi-nfc-gps/414067

2.1 函数基本说明

struct wpa_ctrl * wpa_ctrl_open(const char *ctrl_path);

打开wpa_supplicant的一个控制接口,参数ctrl_path一般为/var/run/wpa_supplicant/wlan0,wlan0为对应的网络节点。成功时返回控制结构体指针,后续的一系列函数都以该指针为参数。失败时返回NULL。

int wpa_ctrl_attach(struct wpa_ctrl *ctrl);

注册一个事件通知监视器。成功时返回。失败时返回-1。超时则返回-2。该函数成功之后,可以通过wpa_ctrl_pending和wpa_ctrl_recv处理事件通知。

int wpa_ctrl_pending(struct wpa_ctrl *ctrl);

检查是否有待处理的事件通知,如果有返回1,没有返回0,出错返回-1。

int wpa_ctrl_recv(struct wpa_ctrl *ctrl, char *reply, size_t *reply_len);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ta是一个搬运工

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值