Skip to contentSkip to conversation

Patch "wext: handle NULL extra data in iwe_stream_add_point better" has been added to the 3.18-stable tree

PATCH [email protected] 1 participant 1 message Aug 9, 2017

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

wext: handle NULL extra data in iwe_stream_add_point better

to the 3.18-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
wext-handle-null-extra-data-in-iwe_stream_add_point-better.patch
and it can be found in the queue-3.18 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 93be2b74279c15c2844684b1a027fdc71dd5d9bf Mon Sep 17 00:00:00 2001

From: Arnd Bergmann <[email protected]>
Date: Wed, 11 Jan 2017 15:35:25 +0100
Subject: wext: handle NULL extra data in iwe_stream_add_point better

From: Arnd Bergmann <[email protected]>

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.

---
 include/net/iw_handler.h |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
include/net/iw_handler.h +2 -1
@@ -545,7 +545,8 @@ iwe_stream_add_point(struct iw_request_i
 		memcpy(stream + lcp_len,
 		       ((char *) &iwe->u) + IW_EV_POINT_OFF,
 		       IW_EV_POINT_PK_LEN - IW_EV_LCP_PK_LEN);
-		memcpy(stream + point_len, extra, iwe->u.data.length);
+		if (iwe->u.data.length && extra)
+			memcpy(stream + point_len, extra, iwe->u.data.length);
 		stream += event_len;
 	}
 	return stream;

Patches currently in stable-queue which might be from [email protected] are

queue-3.18/vfio-pci-use-32-bit-comparisons-for-register-address-for-gcc-4.5.patch queue-3.18/drm-vmwgfx-fix-gcc-7.1.1-warning.patch queue-3.18/wext-handle-null-extra-data-in-iwe_stream_add_point-better.patch