Создание пользовательского интерфейса wpa_supplicant

Мне нужно создать программу, которая общается с прямым Wi-Fi между картой litle и android. Я сделал «список iw» , и я получил :
Поддерживаемые режимы интерфейса:
* ИнБЮМ
* управляемый
* АР
* монитор
* P2P-клиент
* P2P-GO
Так что, как правило, это должно сделать.
Я нашел этот сайт : https://w1.fi/wpa_supplicant/devel/index.html использовать wpa_applicant в коде c.
Итак, я использовал, как они сказали wpa_ctrl.с
КОД:

#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 %sn", msg);
printf("len callback %dn", 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("youpin");
}
else
{
    printf("pas youpin");
    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 %dn", ret);
printf("response size %dn", size_buf);
printf("reponse : %sn", response);
return (0);
}

это то, что добавляется, когда я бегу :
youpi
ret значение 0
размер ответа 0
reponse :

Так что соединение в порядке, но запрос ping должен быть PONG или я ничего не получил.
Пожалуйста, помогите мне 🙂

1 ответ