aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/tun.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/tun.c')
-rw-r--r--drivers/net/tun.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/tun.c b/drivers/net/tun.c
index 288d8559f8c5..4d461595406d 100644
--- a/drivers/net/tun.c
+++ b/drivers/net/tun.c
@@ -386,8 +386,8 @@ static ssize_t tun_chr_aio_read(struct kiocb *iocb, const struct iovec *iv,
386 * - we are multicast promiscous. 386 * - we are multicast promiscous.
387 * - we belong to the multicast group. 387 * - we belong to the multicast group.
388 */ 388 */
389 memcpy(addr, skb->data, 389 skb_copy_from_linear_data(skb, addr, min_t(size_t, sizeof addr,
390 min_t(size_t, sizeof addr, skb->len)); 390 skb->len));
391 bit_nr = ether_crc(sizeof addr, addr) >> 26; 391 bit_nr = ether_crc(sizeof addr, addr) >> 26;
392 if ((tun->if_flags & IFF_PROMISC) || 392 if ((tun->if_flags & IFF_PROMISC) ||
393 memcmp(addr, tun->dev_addr, sizeof addr) == 0 || 393 memcmp(addr, tun->dev_addr, sizeof addr) == 0 ||