Lines Matching refs:nd
415 memset(&key->ipv6.nd, 0, sizeof(key->ipv6.nd)); in parse_icmpv6()
421 struct nd_msg *nd; in parse_icmpv6() local
427 if (unlikely(icmp_len < sizeof(*nd))) in parse_icmpv6()
433 nd = (struct nd_msg *)skb_transport_header(skb); in parse_icmpv6()
434 key->ipv6.nd.target = nd->target; in parse_icmpv6()
436 icmp_len -= sizeof(*nd); in parse_icmpv6()
440 (struct nd_opt_hdr *)(nd->opt + offset); in parse_icmpv6()
452 if (unlikely(!is_zero_ether_addr(key->ipv6.nd.sll))) in parse_icmpv6()
454 ether_addr_copy(key->ipv6.nd.sll, in parse_icmpv6()
455 &nd->opt[offset+sizeof(*nd_opt)]); in parse_icmpv6()
458 if (unlikely(!is_zero_ether_addr(key->ipv6.nd.tll))) in parse_icmpv6()
460 ether_addr_copy(key->ipv6.nd.tll, in parse_icmpv6()
461 &nd->opt[offset+sizeof(*nd_opt)]); in parse_icmpv6()
472 memset(&key->ipv6.nd.target, 0, sizeof(key->ipv6.nd.target)); in parse_icmpv6()
473 memset(key->ipv6.nd.sll, 0, sizeof(key->ipv6.nd.sll)); in parse_icmpv6()
474 memset(key->ipv6.nd.tll, 0, sizeof(key->ipv6.nd.tll)); in parse_icmpv6()