Commit e720b03c authored by Jukka Rissanen's avatar Jukka Rissanen Committed by Henrik Brix Andersen
Browse files

net: socket: mgmt: Check buf size in recvfrom()

Return EMSGSIZE if trying to copy too much data into
user supplied buffer.

Signed-off-by: default avatarJukka Rissanen <jukka.rissanen@nordicsemi.no>
(cherry picked from commit 0a16d5c7)
parent a79d5510
Loading
Loading
Loading
Loading
+6 −2
Changes for subsys/net/lib/sockets/sockets_net_mgmt.c: 6 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -209,8 +209,12 @@ again:

	if (info) {
		ret = info_len + sizeof(hdr);
		ret = MIN(max_len, ret);
		memcpy(&copy_to[sizeof(hdr)], info, ret);
		if (ret > max_len) {
			errno = EMSGSIZE;
			return -1;
		}

		memcpy(&copy_to[sizeof(hdr)], info, info_len);
	} else {
		ret = 0;
	}