mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-09-21 12:11:49 +08:00
net/ipv4: net: prefer strscpy over strcpy
The deprecated helper strcpy() performs no bounds checking on the destination buffer. This could result in linear overflows beyond the end of the buffer, leading to all kinds of misbehaviors. The safe replacement is strscpy() [1]. Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strcpy [1] Signed-off-by: Hongbo Li <lihongbo22@huawei.com> Link: https://patch.msgid.link/20240828123224.3697672-7-lihongbo22@huawei.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
af1052fd49
commit
82183b03de
@ -1326,7 +1326,7 @@ int ip_tunnel_init(struct net_device *dev)
|
||||
|
||||
tunnel->dev = dev;
|
||||
tunnel->net = dev_net(dev);
|
||||
strcpy(tunnel->parms.name, dev->name);
|
||||
strscpy(tunnel->parms.name, dev->name);
|
||||
iph->version = 4;
|
||||
iph->ihl = 5;
|
||||
|
||||
|
@ -826,7 +826,7 @@ static int get_info(struct net *net, void __user *user, const int *len)
|
||||
sizeof(info.underflow));
|
||||
info.num_entries = private->number;
|
||||
info.size = private->size;
|
||||
strcpy(info.name, name);
|
||||
strscpy(info.name, name);
|
||||
|
||||
if (copy_to_user(user, &info, *len) != 0)
|
||||
ret = -EFAULT;
|
||||
|
@ -981,7 +981,7 @@ static int get_info(struct net *net, void __user *user, const int *len)
|
||||
sizeof(info.underflow));
|
||||
info.num_entries = private->number;
|
||||
info.size = private->size;
|
||||
strcpy(info.name, name);
|
||||
strscpy(info.name, name);
|
||||
|
||||
if (copy_to_user(user, &info, *len) != 0)
|
||||
ret = -EFAULT;
|
||||
|
Loading…
Reference in New Issue
Block a user