• Home
  • Raw
  • Download

Lines Matching full:v6

102 			addr->a.v6.sin6_family = AF_INET6;  in sctp_inet6addr_event()
103 addr->a.v6.sin6_addr = ifa->addr; in sctp_inet6addr_event()
104 addr->a.v6.sin6_scope_id = ifa->idev->dev->ifindex; in sctp_inet6addr_event()
117 ipv6_addr_equal(&addr->a.v6.sin6_addr, in sctp_inet6addr_event()
255 fl6->daddr = daddr->v6.sin6_addr; in sctp_v6_get_dst()
256 fl6->fl6_dport = daddr->v6.sin6_port; in sctp_v6_get_dst()
258 if (ipv6_addr_type(&daddr->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL) in sctp_v6_get_dst()
259 fl6->flowi6_oif = daddr->v6.sin6_scope_id; in sctp_v6_get_dst()
280 fl6->saddr = saddr->v6.sin6_addr; in sctp_v6_get_dst()
282 fl6->fl6_sport = saddr->v6.sin6_port; in sctp_v6_get_dst()
346 fl6->saddr = laddr->a.v6.sin6_addr; in sctp_v6_get_dst()
347 fl6->fl6_sport = laddr->a.v6.sin6_port; in sctp_v6_get_dst()
355 &laddr->a.v6.sin6_addr, bdst->dev, 1)) { in sctp_v6_get_dst()
400 return ipv6_addr_diff(&s1->v6.sin6_addr, &s2->v6.sin6_addr); in sctp_v6_addr_match_len()
416 saddr->v6.sin6_family = AF_INET6; in sctp_v6_get_saddr()
417 saddr->v6.sin6_addr = fl6->saddr; in sctp_v6_get_saddr()
440 addr->a.v6.sin6_family = AF_INET6; in sctp_v6_copy_addrlist()
441 addr->a.v6.sin6_addr = ifp->addr; in sctp_v6_copy_addrlist()
442 addr->a.v6.sin6_scope_id = dev->ifindex; in sctp_v6_copy_addrlist()
494 struct sockaddr_in6 *sa = &addr->v6; in sctp_v6_from_skb()
496 addr->v6.sin6_family = AF_INET6; in sctp_v6_from_skb()
497 addr->v6.sin6_flowinfo = 0; /* FIXME */ in sctp_v6_from_skb()
498 addr->v6.sin6_scope_id = ((struct inet6_skb_parm *)skb->cb)->iif; in sctp_v6_from_skb()
512 addr->v6.sin6_family = AF_INET6; in sctp_v6_from_sk()
513 addr->v6.sin6_port = 0; in sctp_v6_from_sk()
514 addr->v6.sin6_addr = sk->sk_v6_rcv_saddr; in sctp_v6_from_sk()
527 sk->sk_v6_rcv_saddr = addr->v6.sin6_addr; in sctp_v6_to_sk_saddr()
540 sk->sk_v6_daddr = addr->v6.sin6_addr; in sctp_v6_to_sk_daddr()
549 if (ntohs(param->v6.param_hdr.length) < sizeof(struct sctp_ipv6addr_param)) in sctp_v6_from_addr_param()
552 addr->v6.sin6_family = AF_INET6; in sctp_v6_from_addr_param()
553 addr->v6.sin6_port = port; in sctp_v6_from_addr_param()
554 addr->v6.sin6_flowinfo = 0; /* BUG */ in sctp_v6_from_addr_param()
555 addr->v6.sin6_addr = param->v6.addr; in sctp_v6_from_addr_param()
556 addr->v6.sin6_scope_id = iif; in sctp_v6_from_addr_param()
569 param->v6.param_hdr.type = SCTP_PARAM_IPV6_ADDRESS; in sctp_v6_to_addr_param()
570 param->v6.param_hdr.length = htons(length); in sctp_v6_to_addr_param()
571 param->v6.addr = addr->v6.sin6_addr; in sctp_v6_to_addr_param()
581 addr->v6.sin6_port = port; in sctp_v6_to_addr()
582 addr->v6.sin6_flowinfo = 0; in sctp_v6_to_addr()
583 addr->v6.sin6_addr = *saddr; in sctp_v6_to_addr()
584 addr->v6.sin6_scope_id = 0; in sctp_v6_to_addr()
593 ipv6_addr_v4mapped(&addr2->v6.sin6_addr) && in __sctp_v6_cmp_addr()
594 addr2->v6.sin6_addr.s6_addr32[3] == in __sctp_v6_cmp_addr()
600 ipv6_addr_v4mapped(&addr1->v6.sin6_addr) && in __sctp_v6_cmp_addr()
601 addr1->v6.sin6_addr.s6_addr32[3] == in __sctp_v6_cmp_addr()
608 if (!ipv6_addr_equal(&addr1->v6.sin6_addr, &addr2->v6.sin6_addr)) in __sctp_v6_cmp_addr()
612 if ((ipv6_addr_type(&addr1->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL) && in __sctp_v6_cmp_addr()
613 addr1->v6.sin6_scope_id && addr2->v6.sin6_scope_id && in __sctp_v6_cmp_addr()
614 addr1->v6.sin6_scope_id != addr2->v6.sin6_scope_id) in __sctp_v6_cmp_addr()
621 * v4-mapped-v6 is also in consideration.
627 addr1->v6.sin6_port == addr2->v6.sin6_port; in sctp_v6_cmp_addr()
634 addr->v6.sin6_family = AF_INET6; in sctp_v6_inaddr_any()
635 addr->v6.sin6_port = port; in sctp_v6_inaddr_any()
641 return ipv6_addr_any(&addr->v6.sin6_addr); in sctp_v6_is_any()
649 const struct in6_addr *in6 = (const struct in6_addr *)&addr->v6.sin6_addr; in sctp_v6_available()
678 int ret = ipv6_addr_type(&addr->v6.sin6_addr); in sctp_v6_addr_valid()
680 /* Support v4-mapped-v6 address. */ in sctp_v6_addr_valid()
682 /* Note: This routine is used in input, so v4-mapped-v6 in sctp_v6_addr_valid()
708 v6scope = ipv6_addr_scope(&addr->v6.sin6_addr); in sctp_v6_scope()
787 ipv6_addr_v4mapped(&addr->v6.sin6_addr)) in sctp_v6_addr_to_user()
810 /* Dump the v6 addr to the seq file. */
813 seq_printf(seq, "%pI6 ", &addr->v6.sin6_addr); in sctp_v6_seq_dump_addr()
841 addr->v6.sin6_family = AF_INET6; in sctp_inet6_event_msgname()
842 addr->v6.sin6_flowinfo = 0; in sctp_inet6_event_msgname()
843 if (ipv6_addr_type(&paddr->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL) in sctp_inet6_event_msgname()
844 addr->v6.sin6_scope_id = paddr->v6.sin6_scope_id; in sctp_inet6_event_msgname()
846 addr->v6.sin6_scope_id = 0; in sctp_inet6_event_msgname()
847 addr->v6.sin6_port = htons(asoc->peer.port); in sctp_inet6_event_msgname()
848 addr->v6.sin6_addr = paddr->v6.sin6_addr; in sctp_inet6_event_msgname()
872 addr->v6.sin6_family = AF_INET6; in sctp_inet6_skb_msgname()
873 addr->v6.sin6_flowinfo = 0; in sctp_inet6_skb_msgname()
874 addr->v6.sin6_port = sh->source; in sctp_inet6_skb_msgname()
875 addr->v6.sin6_addr = ipv6_hdr(skb)->saddr; in sctp_inet6_skb_msgname()
876 if (ipv6_addr_type(&addr->v6.sin6_addr) & IPV6_ADDR_LINKLOCAL) in sctp_inet6_skb_msgname()
877 addr->v6.sin6_scope_id = sctp_v6_skb_iif(skb); in sctp_inet6_skb_msgname()
879 addr->v6.sin6_scope_id = 0; in sctp_inet6_skb_msgname()
891 /* v4-mapped-v6 addresses */ in sctp_inet6_af_supported()
943 int type = ipv6_addr_type(&addr->v6.sin6_addr); in sctp_inet6_bind_verify()
948 if (!addr->v6.sin6_scope_id) in sctp_inet6_bind_verify()
952 dev = dev_get_by_index_rcu(net, addr->v6.sin6_scope_id); in sctp_inet6_bind_verify()
955 ipv6_chk_addr(net, &addr->v6.sin6_addr, in sctp_inet6_bind_verify()
979 int type = ipv6_addr_type(&addr->v6.sin6_addr); in sctp_inet6_send_verify()
983 if (!addr->v6.sin6_scope_id) in sctp_inet6_send_verify()
987 addr->v6.sin6_scope_id); in sctp_inet6_send_verify()