On Tuesday, April 13, 2021 2:59:29 PM CEST Greg Kroah-Hartman wrote:
> On Tue, Apr 13, 2021 at 02:30:41PM +0200, Fabio M. De Francesco wrote:
> > Replaced strncpy() with strscpy() because of compilation time warnings
> > about possible truncation of output [-Wstringop-truncation].
> 
> build warnings?  What build warnings?
>
drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c:1388:5: warning: 
‘strncpy’ output may be truncated copying 32 bytes from a string of length 
32 [-Wstringop-truncation]
 1388 |     strncpy(tmp_ssid, ieee->current_network.ssid, 
IW_ESSID_MAX_SIZE);
> 
> > Furthermore, according to the Linux official documentation, strscpy()
> > is
> > preferred to strncpy.
> > 
> > Signed-off-by: Fabio M. De Francesco <fmdefrance...@gmail.com>
> > ---
> > 
> >  drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c
> > b/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c index
> > 25ea8e1b6b65..aa58eedf5e86 100644
> > --- a/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c
> > +++ b/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c
> > @@ -1385,12 +1385,12 @@ inline void ieee80211_softmac_new_net(struct
> > ieee80211_device *ieee, struct ieee> 
> >                      * essid provided by the user.
> >                      */
> >                     
> >                     if (!ssidbroad) {
> > 
> > -                           strncpy(tmp_ssid, ieee-
>current_network.ssid, IW_ESSID_MAX_SIZE);
> > +                           strscpy(tmp_ssid, ieee-
>current_network.ssid, IW_ESSID_MAX_SIZE);
> 
> Are you sure you can just replace this like this?
>
I surely was... but now I'm not anymore, since your review :)

Maybe you mean I have to check possible return of -E2BIG?
Did you mean something else?
May you please elaborate further?

Thanks,

Fabio
> 
> >                             tmp_ssid_len = ieee-
>current_network.ssid_len;
> >                     
> >                     }
> >                     memcpy(&ieee->current_network, net, 
sizeof(struct
> >                     ieee80211_network));
> > 
> > -                   strncpy(ieee->current_network.ssid, 
tmp_ssid, IW_ESSID_MAX_SIZE);
> > +                   strscpy(ieee->current_network.ssid, 
tmp_ssid, IW_ESSID_MAX_SIZE);
> 
> Same here, are you sure?
> 
> thanks,
> 
> greg k-h




Reply via email to