|
|
@@ -1,11 +1,5 @@
|
|
|
#include <linux/netlink.h>
|
|
|
#include <linux/rtnetlink.h>
|
|
|
-#include <netlink/netlink.h>
|
|
|
-#include <netlink/cache.h>
|
|
|
-#include <netlink/genl/genl.h>
|
|
|
-#include <netlink/genl/ctrl.h>
|
|
|
-#include <netlink/route/link.h>
|
|
|
-#include <netlink/route/addr.h>
|
|
|
#include <netlink/msg.h>
|
|
|
#include <netlink/attr.h>
|
|
|
#include <linux/nl80211.h>
|
|
|
@@ -23,9 +17,18 @@
|
|
|
#include "sys.h"
|
|
|
#include "wifi.h"
|
|
|
#include "paras.h"
|
|
|
-#include "common.h"
|
|
|
+#include "cfg.h"
|
|
|
+
|
|
|
+
|
|
|
+#ifdef USE_WIFI
|
|
|
+#include <netlink/netlink.h>
|
|
|
+#include <netlink/cache.h>
|
|
|
+#include <netlink/genl/genl.h>
|
|
|
+#include <netlink/genl/ctrl.h>
|
|
|
+#include <netlink/route/link.h>
|
|
|
+#include <netlink/route/addr.h>
|
|
|
+#endif
|
|
|
|
|
|
-//#define USE_WIFI
|
|
|
|
|
|
#define ONCE_CNT 20
|
|
|
#define WLAN_IFNAME "wlan0"
|
|
|
@@ -47,14 +50,19 @@ typedef struct {
|
|
|
int ifindex;
|
|
|
char *ifname;
|
|
|
int nl_id; //nl80211_id
|
|
|
+#ifdef USE_WIFI
|
|
|
struct nl_cb *cb;
|
|
|
struct nl_msg *msg;
|
|
|
struct nl_sock *sock;
|
|
|
+#endif
|
|
|
}nl_handle_t;
|
|
|
typedef struct {
|
|
|
int flag;
|
|
|
}wifi_handle_t;
|
|
|
static wifi_handle_t wfHandle={0};
|
|
|
+
|
|
|
+
|
|
|
+#ifdef USE_WIFI
|
|
|
const char *auth_str[AUTH_MAX]={
|
|
|
"NONE",
|
|
|
"ERR",
|
|
|
@@ -161,7 +169,7 @@ static int ap_start(ap_info_t *info, int on)
|
|
|
return r;
|
|
|
}
|
|
|
|
|
|
-#ifdef USE_WIFI
|
|
|
+
|
|
|
static void priv_parse(uint8_t *ie, size_t ie_len, ap_info_t *info)
|
|
|
{
|
|
|
uint8_t *pos = ie;
|
|
|
@@ -552,9 +560,12 @@ static int nl_get_signal(ap_stat_t *stat)
|
|
|
nl_cb_err(h->cb, NL_CB_CUSTOM, error_handler, &err);
|
|
|
nl_cb_set(h->cb, NL_CB_FINISH, NL_CB_CUSTOM, finish_handler, &err);
|
|
|
nl_cb_set(h->cb, NL_CB_ACK, NL_CB_CUSTOM, ack_handler, &err);
|
|
|
- nl_cb_set(h->cb, NL_CB_VALID, NL_CB_CUSTOM, callback_stat, stat);
|
|
|
+ r = nl_cb_set(h->cb, NL_CB_VALID, NL_CB_CUSTOM, callback_stat, stat);
|
|
|
+ printf("_______________stat 111, %d\n", r);
|
|
|
+
|
|
|
+ r = genlmsg_put(h->msg, NL_AUTO_PORT, NL_AUTO_SEQ, h->nl_id, 0, NLM_F_DUMP, NL80211_CMD_GET_STATION, 0); // Setup which command to run.
|
|
|
+ printf("_______________stat 222, %d\n", r);
|
|
|
|
|
|
- genlmsg_put(h->msg, NL_AUTO_PORT, NL_AUTO_SEQ, h->nl_id, 0, NLM_F_DUMP, NL80211_CMD_GET_STATION, 0); // Setup which command to run.
|
|
|
nla_put_u32(h->msg, NL80211_ATTR_IFINDEX, h->ifindex); // Add message attribute, which interface to use.
|
|
|
r = nl_send_auto(h->sock, h->msg);
|
|
|
if(r<0) {
|