libertas: let get nick return what set nick has set
PATCH 1/1 libertas: let get nick return what set nick has set
Make the get-nickname wireless extension actually work. Before this patch, I could do "iwconfig eth1 nick BLAH" but "iwconfig eth1" would have still showed "MRVL-USB8388" to me. Hey, and that was wrong anyway, I'm on a CF card, not on USB :-)
Signed-off-by Holger Schurig <[email protected]>
drivers/net/wireless/libertas/wext.c +7 -27
@@ -251,37 +251,16 @@ static int wlan_set_nick(struct net_devistatic int wlan_get_nick (struct net_device *dev,struct iw_request_info *info,struct iw_point *dwrq,char *extra) { -const char *cp; -char comm[6 ] = {"COMM-" }; -char mrvl[6 ] = {"MRVL-" }; -int cnt; +wlan_private *priv = dev->priv; +wlan_adapter *adapter = priv->adapter;lbs_deb_enter (LBS_DEB_WEXT ); -/* -* Nick Name is not used internally in this mode, -* therefore return something useful instead. Jean II -*/ - -strcpy (extra, mrvl); - - cp =strstr (libertas_driver_version, comm); -if (cp == libertas_driver_version)//skip leading "COMM-" - cp = libertas_driver_version +strlen (comm); -else - cp = libertas_driver_version; - - cnt =strlen (mrvl); - extra += cnt; -while (cnt <16 && (*cp !='-' )) { - *extra++ =toupper (*cp++); - cnt++; - } + dwrq->length =strlen (adapter->nodename); +memcpy (extra, adapter->nodename, dwrq->length); + extra[dwrq->length] ='\0' ; -/* -* Push it out ! -*/ - dwrq->length = cnt; + dwrq->flags =1 ;/* active */ lbs_deb_leave (LBS_DEB_WEXT );return 0 ;
@@ -311,6 +290,7 @@ static int mesh_get_nick(struct net_devilbs_deb_leave (LBS_DEB_WEXT );return 0 ; } +static int wlan_set_rts (struct net_device *dev,struct iw_request_info *info,struct iw_param *vwrq,char *extra) {
Quoted 6 lines · Holger Schurig
Make the get-nickname wireless extension actually work. Before this patch, I could do "iwconfig eth1 nick BLAH" but "iwconfig eth1" would have still showed "MRVL-USB8388" to me. Hey, and that was wrong anyway, I'm on a CF card, not on USB :-)
Signed-off-by Holger Schurig <[email protected]>
Acked-by Dan Williams <[email protected]>
Quoted 57 lines
Index:
libertas-2.6/drivers/net/wireless/libertas/wext.c
===================================================================drivers/net/wireless/libertas/wext.c +7
-27@@ -251,37 +251,16 @@ static int wlan_set_nick(struct net_devistatic int wlan_get_nick (struct net_device *dev,struct iw_request_info *info,struct iw_point *dwrq,char *extra) { -const char *cp; -char comm[6 ] = {"COMM-" }; -char mrvl[6 ] = {"MRVL-" }; -int cnt; +wlan_private *priv = dev->priv; +wlan_adapter *adapter = priv->adapter;lbs_deb_enter (LBS_DEB_WEXT ); -/* -* Nick Name is not used internally in this mode, -* therefore return something useful instead. Jean II -*/ - -strcpy (extra, mrvl); - - cp =strstr (libertas_driver_version, comm); -if (cp == libertas_driver_version)//skip leading "COMM-" - cp = libertas_driver_version +strlen (comm); -else - cp = libertas_driver_version; - - cnt =strlen (mrvl); - extra += cnt; -while (cnt <16 && (*cp !='-' )) { - *extra++ =toupper (*cp++); - cnt++; - } + dwrq->length =strlen (adapter->nodename); +memcpy (extra, adapter->nodename, dwrq->length); + extra[dwrq->length] ='\0' ; -/* -* Push it out ! -*/ - dwrq->length = cnt; + dwrq->flags =1 ;/* active */ lbs_deb_leave (LBS_DEB_WEXT );return 0 ;@@ -311,6 +290,7 @@ static int mesh_get_nick(struct net_devilbs_deb_leave (LBS_DEB_WEXT );return 0 ; } +static int wlan_set_rts (struct net_device *dev,struct iw_request_info *info,struct iw_param *vwrq,char *extra) {