diff options
Diffstat (limited to 'net/ipv6/ndisc.c')
-rw-r--r-- | net/ipv6/ndisc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c index 053147a0027e..a3e3d9e2f44b 100644 --- a/net/ipv6/ndisc.c +++ b/net/ipv6/ndisc.c | |||
@@ -828,7 +828,8 @@ static void ndisc_recv_ns(struct sk_buff *skb) | |||
828 | if (ifp->flags & (IFA_F_TENTATIVE|IFA_F_OPTIMISTIC)) { | 828 | if (ifp->flags & (IFA_F_TENTATIVE|IFA_F_OPTIMISTIC)) { |
829 | if (dad) { | 829 | if (dad) { |
830 | if (dev->type == ARPHRD_IEEE802_TR) { | 830 | if (dev->type == ARPHRD_IEEE802_TR) { |
831 | unsigned char *sadr = skb->mac.raw; | 831 | const unsigned char *sadr; |
832 | sadr = skb_mac_header(skb); | ||
832 | if (((sadr[8] ^ dev->dev_addr[0]) & 0x7f) == 0 && | 833 | if (((sadr[8] ^ dev->dev_addr[0]) & 0x7f) == 0 && |
833 | sadr[9] == dev->dev_addr[1] && | 834 | sadr[9] == dev->dev_addr[1] && |
834 | sadr[10] == dev->dev_addr[2] && | 835 | sadr[10] == dev->dev_addr[2] && |