Lines Matching refs:ip6h
434 struct ipv6hdr *ip6h; in br_ip6_multicast_alloc_query() local
440 skb = netdev_alloc_skb_ip_align(br->dev, sizeof(*eth) + sizeof(*ip6h) + in br_ip6_multicast_alloc_query()
457 ip6h = ipv6_hdr(skb); in br_ip6_multicast_alloc_query()
459 *(__force __be32 *)ip6h = htonl(0x60000000); in br_ip6_multicast_alloc_query()
460 ip6h->payload_len = htons(8 + sizeof(*mldq)); in br_ip6_multicast_alloc_query()
461 ip6h->nexthdr = IPPROTO_HOPOPTS; in br_ip6_multicast_alloc_query()
462 ip6h->hop_limit = 1; in br_ip6_multicast_alloc_query()
463 ipv6_addr_set(&ip6h->daddr, htonl(0xff020000), 0, 0, htonl(1)); in br_ip6_multicast_alloc_query()
464 if (ipv6_dev_get_saddr(dev_net(br->dev), br->dev, &ip6h->daddr, 0, in br_ip6_multicast_alloc_query()
465 &ip6h->saddr)) { in br_ip6_multicast_alloc_query()
469 ipv6_eth_mc_map(&ip6h->daddr, eth->h_dest); in br_ip6_multicast_alloc_query()
471 hopopt = (u8 *)(ip6h + 1); in br_ip6_multicast_alloc_query()
481 skb_put(skb, sizeof(*ip6h) + 8); in br_ip6_multicast_alloc_query()
499 mldq->mld_cksum = csum_ipv6_magic(&ip6h->saddr, &ip6h->daddr, in br_ip6_multicast_alloc_query()
1343 const struct ipv6hdr *ip6h = ipv6_hdr(skb); in br_ip6_multicast_query() local
1387 saddr.u.ip6 = ip6h->saddr; in br_ip6_multicast_query()