浏览代码

wireless: remove NETWORK_EMPTY_ESSID flag

It is unnecessary and of questionable value.  Also remove
is_empty_ssid, as it is also unnecessary.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
John W. Linville 16 年之前
父节点
当前提交
c5d3dce875

+ 1 - 22
drivers/net/wireless/ipw2200.c

@@ -5435,16 +5435,6 @@ static int ipw_find_adhoc_network(struct ipw_priv *priv,
 		return 0;
 		return 0;
 	}
 	}
 
 
-	/* If we do not have an ESSID for this AP, we can not associate with
-	 * it */
-	if (network->flags & NETWORK_EMPTY_ESSID) {
-		IPW_DEBUG_MERGE("Network '%s (%pM)' excluded "
-				"because of hidden ESSID.\n",
-				escape_ssid(network->ssid, network->ssid_len),
-				network->bssid);
-		return 0;
-	}
-
 	if (unlikely(roaming)) {
 	if (unlikely(roaming)) {
 		/* If we are roaming, then ensure check if this is a valid
 		/* If we are roaming, then ensure check if this is a valid
 		 * network to try and roam to */
 		 * network to try and roam to */
@@ -5649,16 +5639,6 @@ static int ipw_best_network(struct ipw_priv *priv,
 		return 0;
 		return 0;
 	}
 	}
 
 
-	/* If we do not have an ESSID for this AP, we can not associate with
-	 * it */
-	if (network->flags & NETWORK_EMPTY_ESSID) {
-		IPW_DEBUG_ASSOC("Network '%s (%pM)' excluded "
-				"because of hidden ESSID.\n",
-				escape_ssid(network->ssid, network->ssid_len),
-				network->bssid);
-		return 0;
-	}
-
 	if (unlikely(roaming)) {
 	if (unlikely(roaming)) {
 		/* If we are roaming, then ensure check if this is a valid
 		/* If we are roaming, then ensure check if this is a valid
 		 * network to try and roam to */
 		 * network to try and roam to */
@@ -6881,8 +6861,7 @@ static int ipw_qos_handle_probe_response(struct ipw_priv *priv,
 	if ((priv->status & STATUS_ASSOCIATED) &&
 	if ((priv->status & STATUS_ASSOCIATED) &&
 	    (priv->ieee->iw_mode == IW_MODE_ADHOC) && (active_network == 0)) {
 	    (priv->ieee->iw_mode == IW_MODE_ADHOC) && (active_network == 0)) {
 		if (memcmp(network->bssid, priv->bssid, ETH_ALEN))
 		if (memcmp(network->bssid, priv->bssid, ETH_ALEN))
-			if ((network->capability & WLAN_CAPABILITY_IBSS) &&
-			    !(network->flags & NETWORK_EMPTY_ESSID))
+			if (network->capability & WLAN_CAPABILITY_IBSS)
 				if ((network->ssid_len ==
 				if ((network->ssid_len ==
 				     priv->assoc_network->ssid_len) &&
 				     priv->assoc_network->ssid_len) &&
 				    !memcmp(network->ssid,
 				    !memcmp(network->ssid,

+ 0 - 1
include/net/ieee80211.h

@@ -729,7 +729,6 @@ struct ieee80211_txb {
 
 
 #define MAX_WPA_IE_LEN 64
 #define MAX_WPA_IE_LEN 64
 
 
-#define NETWORK_EMPTY_ESSID    (1<<0)
 #define NETWORK_HAS_OFDM       (1<<1)
 #define NETWORK_HAS_OFDM       (1<<1)
 #define NETWORK_HAS_CCK        (1<<2)
 #define NETWORK_HAS_CCK        (1<<2)
 
 

+ 0 - 16
include/net/lib80211.h

@@ -12,20 +12,4 @@
  * messages. It should never be used for passing ssid to user space. */
  * messages. It should never be used for passing ssid to user space. */
 const char *escape_ssid(const char *ssid, u8 ssid_len);
 const char *escape_ssid(const char *ssid, u8 ssid_len);
 
 
-static inline int is_empty_ssid(const char *ssid, int ssid_len)
-{
-	/* Single white space is for Linksys APs */
-	if (ssid_len == 1 && ssid[0] == ' ')
-		return 1;
-
-	/* Otherwise, if the entire ssid is 0, we assume it is hidden */
-	while (ssid_len) {
-		ssid_len--;
-		if (ssid[ssid_len] != '\0')
-			return 0;
-	}
-
-	return 1;
-}
-
 #endif /* LIB80211_H */
 #endif /* LIB80211_H */

+ 2 - 13
net/ieee80211/ieee80211_rx.c

@@ -1146,12 +1146,6 @@ static int ieee80211_parse_info_param(struct ieee80211_info_element
 
 
 		switch (info_element->id) {
 		switch (info_element->id) {
 		case MFIE_TYPE_SSID:
 		case MFIE_TYPE_SSID:
-			if (is_empty_ssid(info_element->data,
-					  info_element->len)) {
-				network->flags |= NETWORK_EMPTY_ESSID;
-				break;
-			}
-
 			network->ssid_len = min(info_element->len,
 			network->ssid_len = min(info_element->len,
 						(u8) IW_ESSID_MAX_SIZE);
 						(u8) IW_ESSID_MAX_SIZE);
 			memcpy(network->ssid, info_element->data,
 			memcpy(network->ssid, info_element->data,
@@ -1161,7 +1155,8 @@ static int ieee80211_parse_info_param(struct ieee80211_info_element
 				       IW_ESSID_MAX_SIZE - network->ssid_len);
 				       IW_ESSID_MAX_SIZE - network->ssid_len);
 
 
 			IEEE80211_DEBUG_MGMT("MFIE_TYPE_SSID: '%s' len=%d.\n",
 			IEEE80211_DEBUG_MGMT("MFIE_TYPE_SSID: '%s' len=%d.\n",
-					     network->ssid, network->ssid_len);
+					     escape_ssid(network->ssid),
+					     network->ssid_len);
 			break;
 			break;
 
 
 		case MFIE_TYPE_RATES:
 		case MFIE_TYPE_RATES:
@@ -1391,9 +1386,6 @@ static int ieee80211_handle_assoc_resp(struct ieee80211_device *ieee, struct iee
 			network->mode |= IEEE_B;
 			network->mode |= IEEE_B;
 	}
 	}
 
 
-	if (is_empty_ssid(network->ssid, network->ssid_len))
-		network->flags |= NETWORK_EMPTY_ESSID;
-
 	memcpy(&network->stats, stats, sizeof(network->stats));
 	memcpy(&network->stats, stats, sizeof(network->stats));
 
 
 	if (ieee->handle_assoc_response != NULL)
 	if (ieee->handle_assoc_response != NULL)
@@ -1463,9 +1455,6 @@ static int ieee80211_network_init(struct ieee80211_device *ieee, struct ieee8021
 		return 1;
 		return 1;
 	}
 	}
 
 
-	if (is_empty_ssid(network->ssid, network->ssid_len))
-		network->flags |= NETWORK_EMPTY_ESSID;
-
 	memcpy(&network->stats, stats, sizeof(network->stats));
 	memcpy(&network->stats, stats, sizeof(network->stats));
 
 
 	return 0;
 	return 0;

+ 3 - 9
net/ieee80211/ieee80211_wx.c

@@ -65,15 +65,9 @@ static char *ieee80211_translate_scan(struct ieee80211_device *ieee,
 	/* Add the ESSID */
 	/* Add the ESSID */
 	iwe.cmd = SIOCGIWESSID;
 	iwe.cmd = SIOCGIWESSID;
 	iwe.u.data.flags = 1;
 	iwe.u.data.flags = 1;
-	if (network->flags & NETWORK_EMPTY_ESSID) {
-		iwe.u.data.length = sizeof("<hidden>");
-		start = iwe_stream_add_point(info, start, stop,
-					     &iwe, "<hidden>");
-	} else {
-		iwe.u.data.length = min(network->ssid_len, (u8) 32);
-		start = iwe_stream_add_point(info, start, stop,
-					     &iwe, network->ssid);
-	}
+	iwe.u.data.length = min(network->ssid_len, (u8) 32);
+	start = iwe_stream_add_point(info, start, stop,
+				     &iwe, network->ssid);
 
 
 	/* Add the protocol name */
 	/* Add the protocol name */
 	iwe.cmd = SIOCGIWNAME;
 	iwe.cmd = SIOCGIWNAME;

+ 0 - 5
net/wireless/lib80211.c

@@ -24,11 +24,6 @@ const char *escape_ssid(const char *ssid, u8 ssid_len)
 	const char *s = ssid;
 	const char *s = ssid;
 	char *d = escaped;
 	char *d = escaped;
 
 
-	if (is_empty_ssid(ssid, ssid_len)) {
-		memcpy(escaped, "<hidden>", sizeof("<hidden>"));
-		return escaped;
-	}
-
 	ssid_len = min_t(u8, ssid_len, IEEE80211_MAX_SSID_LEN);
 	ssid_len = min_t(u8, ssid_len, IEEE80211_MAX_SSID_LEN);
 	while (ssid_len--) {
 	while (ssid_len--) {
 		if (*s == '\0') {
 		if (*s == '\0') {