Commit 40a1fb49 authored by Wolfram Sang's avatar Wolfram Sang Committed by Dong Chenchen
Browse files

packet: move from strlcpy with unused retval to strscpy

stable inclusion
from stable-v4.19.308
commit a2b855119ec4a0142abf5ce354ea82f368dce778
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I9GV9R
CVE: NA

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a2b855119ec4a0142abf5ce354ea82f368dce778

--------------------------------

[ Upstream commit 8fc9d51e ]

Follow the advice of the below link and prefer 'strscpy' in this
subsystem. Conversion is 1:1 because the return value is not used.
Generated by a coccinelle script.

Link: https://lore.kernel.org/r/CAHk-=wgfRnXz0W3D37d01q3JFkr_i_uTL=V6A6G1oUZcprmknw@mail.gmail.com/


Signed-off-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
Link: https://lore.kernel.org/r/20220818210227.8611-1-wsa+renesas@sang-engineering.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
Stable-dep-of: a7d6027790ac ("arp: Prevent overflow in arp_req_get().")
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
Signed-off-by: default avatarDong Chenchen <dongchenchen2@huawei.com>
parent 462be1a5
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1849,7 +1849,7 @@ static int packet_rcv_spkt(struct sk_buff *skb, struct net_device *dev,
	 */

	spkt->spkt_family = dev->type;
	strlcpy(spkt->spkt_device, dev->name, sizeof(spkt->spkt_device));
	strscpy(spkt->spkt_device, dev->name, sizeof(spkt->spkt_device));
	spkt->spkt_protocol = skb->protocol;

	/*
@@ -3495,7 +3495,7 @@ static int packet_getname_spkt(struct socket *sock, struct sockaddr *uaddr,
	rcu_read_lock();
	dev = dev_get_by_index_rcu(sock_net(sk), READ_ONCE(pkt_sk(sk)->ifindex));
	if (dev)
		strlcpy(uaddr->sa_data, dev->name, sizeof(uaddr->sa_data));
		strscpy(uaddr->sa_data, dev->name, sizeof(uaddr->sa_data));
	rcu_read_unlock();

	return sizeof(*uaddr);