Lines Matching refs:ifra

510 	struct in6_aliasreq sifra, *ifra = NULL;
651 * Convert user ifra to the kernel form, when appropriate.
656 ifra = in6_aliasreq_to_native(data, 0, &sifra);
657 bcopy(&ifra->ifra_addr, &sin6, sizeof (sin6));
665 * Convert user ifra to the kernel form, when appropriate.
670 ifra = in6_aliasreq_to_native(data, 1, &sifra);
671 bcopy(&ifra->ifra_addr, &sin6, sizeof (sin6));
715 VERIFY(ifra != NULL);
722 ifra->ifra_addr.sin6_family == AF_INET6 &&
723 ifra->ifra_dstaddr.sin6_family == AF_INET6) {
725 error = in6_if_up(ifp, ifra);
856 * the corresponding operation. Use "sa6" instead of "ifra"
1114 VERIFY(ifra != NULL);
1133 if ((error = in6_update_ifa(ifp, ifra, ia, 0, M_WAITOK)) != 0)
1150 pr0.ndpr_plen = in6_mask2len(&ifra->ifra_prefixmask.sin6_addr,
1154 pr0.ndpr_prefix = ifra->ifra_addr;
1155 pr0.ndpr_mask = ifra->ifra_prefixmask.sin6_addr;
1159 ifra->ifra_prefixmask.sin6_addr.s6_addr32[i];
1170 ((ifra->ifra_flags & IN6_IFF_AUTOCONF) != 0);
1171 pr0.ndpr_vltime = ifra->ifra_lifetime.ia6t_vltime;
1172 pr0.ndpr_pltime = ifra->ifra_lifetime.ia6t_pltime;
1194 &ifra->ifra_addr.sin6_addr)) == NULL) {
1446 in6_update_ifa(struct ifnet *ifp, struct in6_aliasreq *ifra,
1462 if (ifp == NULL || ifra == NULL) /* this maybe redundant */
1470 ifra->ifra_dstaddr.sin6_family != AF_INET6 &&
1471 ifra->ifra_dstaddr.sin6_family != AF_UNSPEC)
1477 if (ifra->ifra_prefixmask.sin6_len > sizeof(struct sockaddr_in6))
1483 if (ifra->ifra_prefixmask.sin6_len == sizeof(struct sockaddr_in6) &&
1484 ifra->ifra_prefixmask.sin6_family == 0) {
1485 ifra->ifra_prefixmask.sin6_family = AF_INET6;
1493 if (ia == NULL && ifra->ifra_prefixmask.sin6_len == 0)
1495 if (ifra->ifra_prefixmask.sin6_len != 0) {
1496 plen = in6_mask2len(&ifra->ifra_prefixmask.sin6_addr,
1497 (u_char *)&ifra->ifra_prefixmask +
1498 ifra->ifra_prefixmask.sin6_len);
1515 dst6 = ifra->ifra_dstaddr;
1521 &ifra->ifra_dstaddr.sin6_addr,
1541 if (ifra->ifra_dstaddr.sin6_family == AF_INET6) {
1561 lt = &ifra->ifra_lifetime;
1563 || (ifra->ifra_flags & IN6_IFF_TEMPORARY) != 0)
1574 ip6_sprintf(&ifra->ifra_addr.sin6_addr));
1577 || (ifra->ifra_flags & IN6_IFF_TEMPORARY) != 0)
1648 if (ifra->ifra_prefixmask.sin6_len) {
1664 ia->ia_prefixmask = ifra->ifra_prefixmask;
1698 ia->ia6_lifetime = ifra->ifra_lifetime;
1700 || (ifra->ifra_flags & IN6_IFF_TEMPORARY) != 0) {
1706 || (ifra->ifra_flags & IN6_IFF_TEMPORARY) != 0) {
1714 if ((error = in6_ifinit(ifp, ia, &ifra->ifra_addr, hostIsNew)) != 0)
1721 ia->ia6_flags = ifra->ifra_flags;
1726 if ((ifra->ifra_flags & IN6_IFF_DEPRECATED) != 0) {
1771 llsol.s6_addr32[3] = ifra->ifra_addr.sin6_addr.s6_addr32[3];
1960 ((ifra->ifra_flags & IN6_IFF_NODAD) == 0) &&
2264 struct in6_aliasreq ifra;
2302 bzero(&ifra, sizeof(ifra));
2303 bcopy(iflr->iflr_name, ifra.ifra_name, sizeof(ifra.ifra_name));
2305 bcopy(&iflr->addr, &ifra.ifra_addr,
2309 ifra.ifra_addr.sin6_addr.s6_addr32[2] =
2311 ifra.ifra_addr.sin6_addr.s6_addr32[3] =
2316 bcopy(&iflr->dstaddr, &ifra.ifra_dstaddr,
2319 ifra.ifra_dstaddr.sin6_addr.s6_addr32[2] =
2321 ifra.ifra_dstaddr.sin6_addr.s6_addr32[3] =
2326 ifra.ifra_prefixmask.sin6_len = sizeof(struct sockaddr_in6);
2327 in6_prefixlen2mask(&ifra.ifra_prefixmask.sin6_addr, prefixlen);
2329 ifra.ifra_flags = iflr->flags & ~IFLR_PREFIX;
2336 in6_aliasreq_64_to_32((struct in6_aliasreq_64 *)&ifra,
2342 (caddr_t)&ifra, ifp, p));
2347 (caddr_t)&ifra, ifp, p));
2353 in6_aliasreq_32_to_64((struct in6_aliasreq_32 *)&ifra,
2470 struct in6_aliasreq ifra;
2473 bzero(&ifra, sizeof(ifra));
2474 bcopy(iflr->iflr_name, ifra.ifra_name,
2475 sizeof(ifra.ifra_name));
2478 bcopy(&ia->ia_addr, &ifra.ifra_addr,
2481 bcopy(&ia->ia_dstaddr, &ifra.ifra_dstaddr,
2484 bzero(&ifra.ifra_dstaddr,
2485 sizeof(ifra.ifra_dstaddr));
2487 bcopy(&ia->ia_prefixmask, &ifra.ifra_dstaddr,
2490 ifra.ifra_flags = ia->ia6_flags;
2505 (struct in6_aliasreq_64 *)&ifra, &ifra_32);
2510 (caddr_t)&ifra, ifp, p));
2515 (caddr_t)&ifra, ifp, p));
2527 (struct in6_aliasreq_32 *)&ifra, &ifra_64);
3384 struct in6_aliasreq *ifra)
3394 error = in6_ifattach(ifp, NULL, ifra);