|
@@ -2220,8 +2220,9 @@ static int wpa_supplicant_ctrl_iface_scan_result(
|
|
|
{
|
|
|
char *pos, *end;
|
|
|
int ret;
|
|
|
- const u8 *ie, *ie2, *p2p;
|
|
|
+ const u8 *ie, *ie2, *p2p, *mesh;
|
|
|
|
|
|
+ mesh = wpa_bss_get_ie(bss, WLAN_EID_MESH_ID);
|
|
|
p2p = wpa_bss_get_vendor_ie(bss, P2P_IE_VENDOR_TYPE);
|
|
|
if (!p2p)
|
|
|
p2p = wpa_bss_get_vendor_ie_beacon(bss, P2P_IE_VENDOR_TYPE);
|
|
@@ -2242,8 +2243,10 @@ static int wpa_supplicant_ctrl_iface_scan_result(
|
|
|
if (ie)
|
|
|
pos = wpa_supplicant_ie_txt(pos, end, "WPA", ie, 2 + ie[1]);
|
|
|
ie2 = wpa_bss_get_ie(bss, WLAN_EID_RSN);
|
|
|
- if (ie2)
|
|
|
- pos = wpa_supplicant_ie_txt(pos, end, "WPA2", ie2, 2 + ie2[1]);
|
|
|
+ if (ie2) {
|
|
|
+ pos = wpa_supplicant_ie_txt(pos, end, mesh ? "RSN" : "WPA2",
|
|
|
+ ie2, 2 + ie2[1]);
|
|
|
+ }
|
|
|
pos = wpa_supplicant_wps_ie_txt(wpa_s, pos, end, bss);
|
|
|
if (!ie && !ie2 && bss->caps & IEEE80211_CAP_PRIVACY) {
|
|
|
ret = os_snprintf(pos, end - pos, "[WEP]");
|
|
@@ -2251,6 +2254,12 @@ static int wpa_supplicant_ctrl_iface_scan_result(
|
|
|
return -1;
|
|
|
pos += ret;
|
|
|
}
|
|
|
+ if (mesh) {
|
|
|
+ ret = os_snprintf(pos, end - pos, "[MESH]");
|
|
|
+ if (ret < 0 || ret >= end - pos)
|
|
|
+ return -1;
|
|
|
+ pos += ret;
|
|
|
+ }
|
|
|
if (bss_is_dmg(bss)) {
|
|
|
const char *s;
|
|
|
ret = os_snprintf(pos, end - pos, "[DMG]");
|