创建wpa_supplicant UI
问题描述:
我需要创建一个程序,在litle卡和android之间使用直接wifi进行通信。我已经做了 “IW列表” 和我得到: 支持的接口模式: * IBSS *管理 * AP *监测 * P2P客户端 * P2P-GO 所以,通常情况下,应该这样做。 我发现这个网站:https://w1.fi/wpa_supplicant/devel/index.html在c代码中使用wpa_applicant。 所以,我用像他们说wpa_ctrl.c CODE:创建wpa_supplicant UI
#include <stdio.h>
#include "direct.h"
#include "wpa_ctrl.h"
#include <string.h>
void function_test_call(char *msg, size_t len)
{
printf("message callback %s\n", msg);
printf("len callback %d\n", len);
}
int main()
{
struct wpa_ctrl *wpa_path;
const char *path = "/var/run/wpa_supplicant/wlan0";
wpa_path = (void*)0;
wpa_path = wpa_ctrl_open(path);
if (wpa_path)
{
printf("youpi\n");
}
else
{
printf("pas youpi\n");
return (1);
}
char response[1024];
size_t size_buf = 0;
int ret = wpa_ctrl_request(wpa_path, "PING",
4, response, &size_buf, function_test_call);
printf("ret value %d\n", ret);
printf("response size %d\n", size_buf);
printf("reponse : %s\n", response);
return (0);
}
这是什么的追加当我运行: youpi RET值0 响应大小0 的回复:
所以连接好的,但请求ping应该是PONG或者我什么都没有。 请帮我:)
答
我发现,这是我的错误 我替换了 size_t size_buf = 0; size_t size_buf = 1023; 我的不好-_-
'wpa_path =(void *)0;'而不是'wpa_path = NULL;'?只是好奇你为什么想要投“0”...... –
我知道这很愚蠢。 :),这只是m'y方式我怎么做的事情...也许不是最好的方式.. –
@Aodren BARY是否能够提供引脚到P2P GO,当P2P客户端提供了u引脚进入另一个设备。 – shubham5263