|
@@ -2851,12 +2851,11 @@ static int packet_getname_spkt(struct socket *sock, struct sockaddr *uaddr,
|
|
|
return -EOPNOTSUPP;
|
|
|
|
|
|
uaddr->sa_family = AF_PACKET;
|
|
|
+ memset(uaddr->sa_data, 0, sizeof(uaddr->sa_data));
|
|
|
rcu_read_lock();
|
|
|
dev = dev_get_by_index_rcu(sock_net(sk), pkt_sk(sk)->ifindex);
|
|
|
if (dev)
|
|
|
- strncpy(uaddr->sa_data, dev->name, 14);
|
|
|
- else
|
|
|
- memset(uaddr->sa_data, 0, 14);
|
|
|
+ strlcpy(uaddr->sa_data, dev->name, sizeof(uaddr->sa_data));
|
|
|
rcu_read_unlock();
|
|
|
*uaddr_len = sizeof(*uaddr);
|
|
|
|