f1340704@lhbvm177:~/work4/ti_yocto$ git diff
diff --git /wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
/wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
index b055e684a..31cf7f4f1 100644
--- /wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
+++ /wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
@@ -867,12 +867,28 @@ struct nl80211_bss_info_arg {
const u8 *bssid;
};
+#define WLAN_EID_SSID 0
+
+
+static const u8 * wpa_scan_get_ie(const struct wpa_scan_res *res, u8 ie)
+{
+ size_t ie_len = res->ie_len;
+
+ /* Use the Beacon frame IEs if res->ie_len is not available */
+ if (!ie_len)
+ ie_len = res->beacon_ie_len;
+
+ return get_ie((const u8 *) (res + 1), ie_len, ie);
+}
+
static int bss_info_handler(struct nl_msg *msg, void *arg)
{
diff --git a/wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
b/wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
index b055e684a..31cf7f4f1 100644
--- a//wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
+++ b/wpa_supplicant-2.11/src/drivers/driver_nl80211_scan.c
@@ -867,12 +867,28 @@ struct nl80211_bss_info_arg {
const u8 *bssid;
};
+#define WLAN_EID_SSID 0
+
+
+static const u8 * wpa_scan_get_ie(const struct wpa_scan_res *res, u8 ie)
+{
+ size_t ie_len = res->ie_len;
+
+ /* Use the Beacon frame IEs if res->ie_len is not available */
+ if (!ie_len)
+ ie_len = res->beacon_ie_len;
+
+ return get_ie((const u8 *) (res + 1), ie_len, ie);
+}
+
static int bss_info_handler(struct nl_msg *msg, void *arg)
{
struct nl80211_bss_info_arg *_arg = arg;
struct wpa_scan_results *res = _arg->res;
struct wpa_scan_res **tmp;
struct wpa_scan_res *r;
+ const u8 *ssid;
+ u8 ssid_name[36] = {0};
r = nl80211_parse_bss_info(_arg->drv, msg, _arg->bssid);
if (!r)
@@ -882,6 +898,12 @@ static int bss_info_handler(struct nl_msg *msg, void *arg)
os_free(r);
return NL_SKIP;
}
+
+ ssid = wpa_scan_get_ie(r, WLAN_EID_SSID);
+
+ strncpy(ssid_name, ssid + 2, (size_t)ssid[1]);
+ wpa_printf(MSG_DEBUG, "[ssh] ssid_name: %s ", ssid_name);
+
tmp = os_realloc_array(res->res, res->num + 1,
sizeof(struct wpa_scan_res *));
if (tmp == NULL) {