Re: Added Realtek rtl8192u driver to staging - static analysis report.
On Wed, Aug 21, 2019 at 07:18:39PM +0100, Colin Ian King wrote: > Hi, > > Static analysis of linux-next picked up an issue with the following commit: > > commit 8fc8598e61f6f384f3eaf1d9b09500c12af47b37 > Author: Jerry Chuang > Date: Tue Nov 3 07:17:11 2009 -0200 > > Staging: Added Realtek rtl8192u driver to staging > > In drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c we have: > > CID 48331 (#1 of 1): Unused value (UNUSED_VALUE) assigned_pointer > > Assigning value from ieee->crypt[ieee->tx_keyidx] to crypt here, but > that stored value is not used. > > 746crypt = ieee->crypt[ieee->tx_keyidx]; > 747if (encrypt) > 748beacon_buf->capability |= > cpu_to_le16(WLAN_CAPABILITY_PRIVACY); Earlir in the function we have: 695 crypt = ieee->crypt[ieee->tx_keyidx]; 696 697 encrypt = ieee->host_encrypt && crypt && crypt->ops && 698 ((0 == strcmp(crypt->ops->name, "WEP") || wpa_ie_len)); 699 /* HT ralated element */ So the "crypt" assignment is dublicate and should definitely be removed. The "if (encrypt) " check looks correct and it sort of matches what we do in ieee80211_assoc_resp(). 840 encrypt = crypt && crypt->ops; 841 842 if (encrypt) 843 assoc->capability |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY); 844 So let's leave it as-is, just delete the crypt assignment. If you want, you can send this patch and I can give you a Reviewed-by tag or if you want I can send the patch and give you Reported-by credit. regards, dan carpenter ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: Added Realtek rtl8192u driver to staging - static analysis report.
> > Either way, it's not clear to me and I think the code needs cleaning > > up. > > Any ideas? > > 10+ year old code, yeah!!! > > Just guess, who knows, no one seems to care :( I'm at least interested in helping with cleaning the code and learning about the driver, maybe fixing up logical errors like this at some point. But I have had some trouble finding the hardware to test on. Maybe that's part of the issue? ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: Added Realtek rtl8192u driver to staging - static analysis report.
On Wed, Aug 21, 2019 at 07:18:39PM +0100, Colin Ian King wrote: > Hi, > > Static analysis of linux-next picked up an issue with the following commit: > > commit 8fc8598e61f6f384f3eaf1d9b09500c12af47b37 > Author: Jerry Chuang > Date: Tue Nov 3 07:17:11 2009 -0200 > > Staging: Added Realtek rtl8192u driver to staging > > In drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c we have: > > CID 48331 (#1 of 1): Unused value (UNUSED_VALUE) assigned_pointer > > Assigning value from ieee->crypt[ieee->tx_keyidx] to crypt here, but > that stored value is not used. > > 746crypt = ieee->crypt[ieee->tx_keyidx]; > 747if (encrypt) > 748beacon_buf->capability |= > cpu_to_le16(WLAN_CAPABILITY_PRIVACY); > > Pointer crypt is being assigned but is never used afterwards. Now > either this is a redundant assignment and can be removed OR maybe crypt > should be checked and there is a typo, e.g.: > > crypt = ieee->crypt[ieee->tx_keyidx]; > if (crypt) > ... > > Either way, it's not clear to me and I think the code needs cleaning up. > Any ideas? 10+ year old code, yeah!!! Just guess, who knows, no one seems to care :( greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
re: Added Realtek rtl8192u driver to staging - static analysis report.
Hi, Static analysis of linux-next picked up an issue with the following commit: commit 8fc8598e61f6f384f3eaf1d9b09500c12af47b37 Author: Jerry Chuang Date: Tue Nov 3 07:17:11 2009 -0200 Staging: Added Realtek rtl8192u driver to staging In drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c we have: CID 48331 (#1 of 1): Unused value (UNUSED_VALUE) assigned_pointer Assigning value from ieee->crypt[ieee->tx_keyidx] to crypt here, but that stored value is not used. 746crypt = ieee->crypt[ieee->tx_keyidx]; 747if (encrypt) 748beacon_buf->capability |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY); Pointer crypt is being assigned but is never used afterwards. Now either this is a redundant assignment and can be removed OR maybe crypt should be checked and there is a typo, e.g.: crypt = ieee->crypt[ieee->tx_keyidx]; if (crypt) ... Either way, it's not clear to me and I think the code needs cleaning up. Any ideas? Colin ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel