From: David Kilroy Date: Sun, 25 Sep 2011 07:30:19 +0000 (+0100) Subject: staging: wlags49_h2: Stop playing with length in GIWESSID handler X-Git-Tag: next-20111004~7^2~56 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=e7751b6384596cc9a2646f037a03ad57f6201f6d;p=karo-tx-linux.git staging: wlags49_h2: Stop playing with length in GIWESSID handler WE21 clarified that ESSID should not be NULL terminated. The existing code didn't NULL terminate, but did play with length and then reset it again. Just stop it. Signed-off-by: David Kilroy Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/wlags49_h2/wl_wext.c b/drivers/staging/wlags49_h2/wl_wext.c index 80bd938bfc0f..1f6b4dce4380 100644 --- a/drivers/staging/wlags49_h2/wl_wext.c +++ b/drivers/staging/wlags49_h2/wl_wext.c @@ -1042,9 +1042,6 @@ static int wireless_get_essid(struct net_device *dev, struct iw_request_info *in /* Copy the information into the user buffer */ data->length = pName->length; - /* NOTE: Null terminating is necessary for proper display of the SSID in - the wireless tools */ - data->length = pName->length + 1; if( pName->length < HCF_MAX_NAME_LEN ) { pName->name[pName->length] = '\0'; } @@ -1070,11 +1067,7 @@ static int wireless_get_essid(struct net_device *dev, struct iw_request_info *in pName->length = CNV_LITTLE_TO_INT( pName->length ); /* Copy the information into the user buffer */ - data->length = pName->length + 1; - if( pName->length < HCF_MAX_NAME_LEN ) { - pName->name[pName->length] = '\0'; - } - + data->length = pName->length; data->flags = 1; } else { ret = -EFAULT; @@ -1084,8 +1077,6 @@ static int wireless_get_essid(struct net_device *dev, struct iw_request_info *in #endif // HCF_STA - data->length--; - if (pName->length > IW_ESSID_MAX_SIZE) { ret = -EFAULT; goto out_unlock;