wext: handle NULL extra data in iwe_stream_add_point better
authorArnd Bergmann <arnd@arndb.de>
Wed, 11 Jan 2017 14:35:25 +0000 (15:35 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 2 Nov 2017 06:16:20 +0000 (07:16 +0100)
commit19cc6d98a6ad6899ccc70cffb39365e7e7cdca93
tree6825701fb627b8cee54fdfdb14239911b3419eca
parent7af6952b1858bf13abb625a99f34bcdd3104b446
wext: handle NULL extra data in iwe_stream_add_point better

commit 93be2b74279c15c2844684b1a027fdc71dd5d9bf upstream.

gcc-7 complains that wl3501_cs passes NULL into a function that
then uses the argument as the input for memcpy:

drivers/net/wireless/wl3501_cs.c: In function 'wl3501_get_scan':
include/net/iw_handler.h:559:3: error: argument 2 null where non-null expected [-Werror=nonnull]
   memcpy(stream + point_len, extra, iwe->u.data.length);

This works fine here because iwe->u.data.length is guaranteed to be 0
and the memcpy doesn't actually have an effect.

Making the length check explicit avoids the warning and should have
no other effect here.

Also check the pointer itself, since otherwise we get warnings
elsewhere in the code.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Willy Tarreau <w@1wt.eu>
include/net/iw_handler.h