Home | History | Annotate | Download | only in netinet6

Lines Matching defs:ifra

405 	struct	in6_aliasreq *ifra = (struct in6_aliasreq *)data;
493 sa6 = &ifra->ifra_addr;
564 if (ifra->ifra_addr.sin6_family != AF_INET6 ||
565 ifra->ifra_addr.sin6_len != sizeof(struct sockaddr_in6)) {
697 in6_aliasreq50_to_in6_aliasreq(ifra);
705 if ((ifra->ifra_flags & IN6_IFF_DUPLICATED) != 0 ||
706 (ifra->ifra_flags & IN6_IFF_DETACHED) != 0 ||
707 (ifra->ifra_flags & IN6_IFF_TENTATIVE) != 0 ||
708 (ifra->ifra_flags & IN6_IFF_NODAD) != 0) {
716 lt = &ifra->ifra_lifetime;
727 error = in6_update_ifa1(ifp, ifra, &ia, &psref, 0);
830 in6_join_mcastgroups(struct in6_aliasreq *ifra, struct in6_ifaddr *ia,
842 error = in6_get_llsol_addr(&llsol, ifp, &ifra->ifra_addr.sin6_addr);
1061 in6_update_ifa1(struct ifnet *ifp, struct in6_aliasreq *ifra,
1078 if (ifp == NULL || ifra == NULL) /* this maybe redundant */
1086 ifra->ifra_dstaddr.sin6_family != AF_INET6 &&
1087 ifra->ifra_dstaddr.sin6_family != AF_UNSPEC)
1093 if (ifra->ifra_prefixmask.sin6_len > sizeof(struct sockaddr_in6))
1101 if (ia == NULL && ifra->ifra_prefixmask.sin6_len == 0)
1103 if (ifra->ifra_prefixmask.sin6_len != 0) {
1104 plen = in6_mask2len(&ifra->ifra_prefixmask.sin6_addr,
1105 (u_char *)&ifra->ifra_prefixmask +
1106 ifra->ifra_prefixmask.sin6_len);
1121 dst6 = ifra->ifra_dstaddr;
1146 if (ifra->ifra_dstaddr.sin6_family == AF_INET6) {
1167 ifra->ifra_prefixmask.sin6_len =
1170 ifra->ifra_prefixmask.sin6_addr.s6_addr32[i] =
1179 lt = &ifra->ifra_lifetime;
1188 IN6_PRINT(ip6buf, &ifra->ifra_addr.sin6_addr));
1201 sin6eq(&ifra->ifra_addr, &ia->ia_addr) &&
1202 sin6eq(&ifra->ifra_prefixmask, &ia->ia_prefixmask)) {
1249 if (ifra->ifra_prefixmask.sin6_len) {
1252 &ifra->ifra_prefixmask.sin6_addr))
1255 ia->ia_prefixmask = ifra->ifra_prefixmask;
1271 ia->ia6_lifetime = ifra->ifra_lifetime;
1289 ia->ia6_flags = ifra->ifra_flags;
1309 if ((ifra->ifra_flags & IN6_IFF_DEPRECATED) != 0) {
1317 * ia and ifra is preferred/valid lifetimes, because it is not
1337 error = in6_ifinit(ifp, ia, &ifra->ifra_addr, hostIsNew);
1369 error = in6_join_mcastgroups(ifra, ia, ifp, flags);
1386 ((ifra->ifra_flags & IN6_IFF_NODAD) == 0) &&
1405 &ifra->ifra_addr.sin6_addr);
1441 in6_update_ifa(struct ifnet *ifp, struct in6_aliasreq *ifra, int flags)
1446 rc = in6_update_ifa1(ifp, ifra, NULL, NULL, flags);
1614 struct in6_aliasreq ifra;
1655 memset(&ifra, 0, sizeof(ifra));
1656 memcpy(ifra.ifra_name, iflr->iflr_name, sizeof(ifra.ifra_name));
1658 memcpy(&ifra.ifra_addr, &iflr->addr,
1662 ifra.ifra_addr.sin6_addr.s6_addr32[2] =
1664 ifra.ifra_addr.sin6_addr.s6_addr32[3] =
1669 memcpy(&ifra.ifra_dstaddr, &iflr->dstaddr,
1672 ifra.ifra_dstaddr.sin6_addr.s6_addr32[2] =
1674 ifra.ifra_dstaddr.sin6_addr.s6_addr32[3] =
1684 ifra.ifra_prefixmask.sin6_len = sizeof(struct sockaddr_in6);
1685 in6_prefixlen2mask(&ifra.ifra_prefixmask.sin6_addr, prefixlen);
1687 ifra.ifra_lifetime.ia6t_vltime = ND6_INFINITE_LIFETIME;
1688 ifra.ifra_lifetime.ia6t_pltime = ND6_INFINITE_LIFETIME;
1689 ifra.ifra_flags = iflr->flags & ~IFLR_PREFIX;
1690 return in6_control(so, SIOCAIFADDR_IN6, &ifra, ifp);
1783 struct in6_aliasreq ifra;
1786 memset(&ifra, 0, sizeof(ifra));
1787 memcpy(ifra.ifra_name, iflr->iflr_name,
1788 sizeof(ifra.ifra_name));
1790 memcpy(&ifra.ifra_addr, &ia->ia_addr,
1793 memcpy(&ifra.ifra_dstaddr, &ia->ia_dstaddr,
1796 memset(&ifra.ifra_dstaddr, 0,
1797 sizeof(ifra.ifra_dstaddr));
1799 memcpy(&ifra.ifra_dstaddr, &ia->ia_prefixmask,
1802 ifra.ifra_flags = ia->ia6_flags;
1805 return in6_control(so, SIOCDIFADDR_IN6, &ifra, ifp);