wifi/ioctl을 사용하여 wifi 카드를 처리하는 코드를 작성하기 시작했습니다.이 코드는 부적절하며 대부분의 응용 프로그램에서 nl80211을 사용합니다. 소스 코드를 읽기 시작했지만 아무 문서도없고 코드가 약간 복잡합니다. 스캔, 끄기/끄기, nl80211 또는 libnl을 사용하여 카드 모드를 설정하는 것과 같은 간단한 작업을 수행하려면 어떻게해야합니까? 이것은 내가 IW 시작 무엇 :libnl/nl80211 equivalent of iw_set_ext
void set_card_mode(MODE mode, std::string ifname)
{
int skfd = iw_sockets_open();
struct iwreq wrq;
wrq.u.mode = static_cast<unsigned int>(mode);
power_interface(ifname, false);
if(iw_set_ext(skfd, ifname.c_str(), SIOCSIWMODE, &wrq) < 0)
throw std::runtime_error("Can set card mode");
}
MODE get_card_mode(std::string ifname)
{
int skfd = iw_sockets_open();
struct iwreq wrq;
if (iw_get_ext (skfd, ifname.c_str(), SIOCGIWMODE, &wrq) >= 0)
{
return static_cast<MODE>(wrq.u.mode);
}
}
는 설정/무선 랜 인터페이스 또는 "set_mode"또는 "POWER_OFF"같은 간단한 기능을 가진 어떤 API를 얻을 수 iw_get_ext의 동등한이 있습니까?
무엇을 설명 할 수 있습니까? ? – Mateusz