• Arnd Bergmann's avatar
    staging: r8188eu: fix -Wrestrict warnings · aa3233ea
    Arnd Bergmann authored
    Adding back the nonstandard ioctl commands caused -Wrestrict warnings
    when building with 'make W=1':
    
    drivers/staging/r8188eu/os_dep/ioctl_linux.c: In function 'rtw_mp_read_rf':
    drivers/staging/r8188eu/os_dep/ioctl_linux.c:5515:27: error: 'sprintf' argument 3 overlaps destination object 'extra' [-Werror=restrict]
     5515 |                           sprintf(extra, "%s %d", extra, strtou);
          |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    drivers/staging/r8188eu/os_dep/ioctl_linux.c:5470:54: note: destination object referenced by 'restrict'-qualified argument 1 was declared here
     5470 |                         struct iw_point *wrqu, char *extra)
          |                                                ~~~~~~^~~~~
    
    Change these to the same construct used elsewhere in that driver,
    with an offset to the string to make the warning go away.
    
    The ioctl commands were previously removed, and it's unlikely that
    anything is actually using them, so ideally I would prefer to have
    them removed again.
    
    The lack of range checking of the 'extra' output buffer is also
    slightly worrying, but I did not check whether this could cause
    harm.
    
    Fixes: 2b42bd58 ("staging: r8188eu: introduce new os_dep dir for RTL8188eu driver")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Link: https://lore.kernel.org/r/20210920095525.1150678-1-arnd@kernel.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    aa3233ea
ioctl_linux.c 189 KB