Lines Matching refs:v6
87 addr->a.v6.sin6_family = AF_INET6;
88 addr->a.v6.sin6_addr = ifa->addr;
89 addr->a.v6.sin6_scope_id = ifa->idev->dev->ifindex;
102 ipv6_addr_equal(&addr->a.v6.sin6_addr,
243 fl6->daddr = daddr->v6.sin6_addr;
244 fl6->fl6_dport = daddr->v6.sin6_port;
246 if (ipv6_addr_type(&daddr->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL)
247 fl6->flowi6_oif = daddr->v6.sin6_scope_id;
268 fl6->saddr = saddr->v6.sin6_addr;
270 fl6->fl6_sport = saddr->v6.sin6_port;
334 fl6->saddr = laddr->a.v6.sin6_addr;
335 fl6->fl6_sport = laddr->a.v6.sin6_port;
343 &laddr->a.v6.sin6_addr, bdst->dev, 1)) {
388 return ipv6_addr_diff(&s1->v6.sin6_addr, &s2->v6.sin6_addr);
404 saddr->v6.sin6_family = AF_INET6;
405 saddr->v6.sin6_addr = fl6->saddr;
428 addr->a.v6.sin6_family = AF_INET6;
429 addr->a.v6.sin6_addr = ifp->addr;
430 addr->a.v6.sin6_scope_id = dev->ifindex;
482 struct sockaddr_in6 *sa = &addr->v6;
484 addr->v6.sin6_family = AF_INET6;
485 addr->v6.sin6_flowinfo = 0; /* FIXME */
486 addr->v6.sin6_scope_id = ((struct inet6_skb_parm *)skb->cb)->iif;
500 addr->v6.sin6_family = AF_INET6;
501 addr->v6.sin6_port = 0;
502 addr->v6.sin6_addr = sk->sk_v6_rcv_saddr;
515 sk->sk_v6_rcv_saddr = addr->v6.sin6_addr;
528 sk->sk_v6_daddr = addr->v6.sin6_addr;
537 if (ntohs(param->v6.param_hdr.length) < sizeof(struct sctp_ipv6addr_param))
540 addr->v6.sin6_family = AF_INET6;
541 addr->v6.sin6_port = port;
542 addr->v6.sin6_flowinfo = 0; /* BUG */
543 addr->v6.sin6_addr = param->v6.addr;
544 addr->v6.sin6_scope_id = iif;
557 param->v6.param_hdr.type = SCTP_PARAM_IPV6_ADDRESS;
558 param->v6.param_hdr.length = htons(length);
559 param->v6.addr = addr->v6.sin6_addr;
569 addr->v6.sin6_port = port;
570 addr->v6.sin6_flowinfo = 0;
571 addr->v6.sin6_addr = *saddr;
572 addr->v6.sin6_scope_id = 0;
581 ipv6_addr_v4mapped(&addr2->v6.sin6_addr) &&
582 addr2->v6.sin6_addr.s6_addr32[3] ==
588 ipv6_addr_v4mapped(&addr1->v6.sin6_addr) &&
589 addr1->v6.sin6_addr.s6_addr32[3] ==
596 if (!ipv6_addr_equal(&addr1->v6.sin6_addr, &addr2->v6.sin6_addr))
600 if ((ipv6_addr_type(&addr1->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL) &&
601 addr1->v6.sin6_scope_id && addr2->v6.sin6_scope_id &&
602 addr1->v6.sin6_scope_id != addr2->v6.sin6_scope_id)
609 * v4-mapped-v6 is also in consideration.
615 addr1->v6.sin6_port == addr2->v6.sin6_port;
622 addr->v6.sin6_family = AF_INET6;
623 addr->v6.sin6_port = port;
629 return ipv6_addr_any(&addr->v6.sin6_addr);
637 const struct in6_addr *in6 = (const struct in6_addr *)&addr->v6.sin6_addr;
666 int ret = ipv6_addr_type(&addr->v6.sin6_addr);
668 /* Support v4-mapped-v6 address. */
670 /* Note: This routine is used in input, so v4-mapped-v6
696 v6scope = ipv6_addr_scope(&addr->v6.sin6_addr);
775 ipv6_addr_v4mapped(&addr->v6.sin6_addr))
798 /* Dump the v6 addr to the seq file. */
801 seq_printf(seq, "%pI6 ", &addr->v6.sin6_addr);
829 addr->v6.sin6_family = AF_INET6;
830 addr->v6.sin6_flowinfo = 0;
831 if (ipv6_addr_type(&paddr->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL)
832 addr->v6.sin6_scope_id = paddr->v6.sin6_scope_id;
834 addr->v6.sin6_scope_id = 0;
835 addr->v6.sin6_port = htons(asoc->peer.port);
836 addr->v6.sin6_addr = paddr->v6.sin6_addr;
860 addr->v6.sin6_family = AF_INET6;
861 addr->v6.sin6_flowinfo = 0;
862 addr->v6.sin6_port = sh->source;
863 addr->v6.sin6_addr = ipv6_hdr(skb)->saddr;
864 if (ipv6_addr_type(&addr->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL)
865 addr->v6.sin6_scope_id = sctp_v6_skb_iif(skb);
867 addr->v6.sin6_scope_id = 0;
879 /* v4-mapped-v6 addresses */
931 int type = ipv6_addr_type(&addr->v6.sin6_addr);
936 if (!addr->v6.sin6_scope_id)
940 dev = dev_get_by_index_rcu(net, addr->v6.sin6_scope_id);
942 ipv6_chk_addr(net, &addr->v6.sin6_addr,
966 int type = ipv6_addr_type(&addr->v6.sin6_addr);
970 if (!addr->v6.sin6_scope_id)
974 addr->v6.sin6_scope_id);