Lines Matching defs:pr

644 	struct nd_prefix *pr;
1002 pr = nd_prefix.lh_first;
1003 while (pr) {
1009 NDPR_LOCK(pr);
1010 if (pr->ndpr_stateflags & NDPRF_PROCESSED) {
1011 NDPR_UNLOCK(pr);
1012 pr = pr->ndpr_next;
1015 if (pr->ndpr_expire && pr->ndpr_expire < timenow.tv_sec) {
1020 pr->ndpr_stateflags |= NDPRF_PROCESSED;
1021 NDPR_ADDREF_LOCKED(pr);
1022 prelist_remove(pr);
1023 NDPR_UNLOCK(pr);
1024 NDPR_REMREF(pr);
1025 pr = nd_prefix.lh_first;
1027 pr->ndpr_stateflags |= NDPRF_PROCESSED;
1028 NDPR_UNLOCK(pr);
1029 pr = pr->ndpr_next;
1032 LIST_FOREACH(pr, &nd_prefix, ndpr_entry) {
1033 NDPR_LOCK(pr);
1034 pr->ndpr_stateflags &= ~NDPRF_PROCESSED;
1035 NDPR_UNLOCK(pr);
1078 bcopy(&itr->pr.ndpr_prefix, &nd6_ra_msg_data.prefix.prefix,
1080 nd6_ra_msg_data.prefix.raflags = itr->pr.ndpr_raf;
1081 nd6_ra_msg_data.prefix.prefixlen = itr->pr.ndpr_plen;
1083 nd6_ra_msg_data.prefix.vltime = itr->pr.ndpr_vltime;
1084 nd6_ra_msg_data.prefix.pltime = itr->pr.ndpr_pltime;
1085 nd6_ra_msg_data.prefix.expire = itr->pr.ndpr_expire;
1086 nd6_ra_msg_data.prefix.flags = itr->pr.ndpr_stateflags;
1087 nd6_ra_msg_data.prefix.refcnt = itr->pr.ndpr_addrcnt;
1088 nd6_ra_msg_data.prefix.if_index = itr->pr.ndpr_ifp->if_index;
1208 struct nd_prefix *pr, *npr;
1239 for (pr = nd_prefix.lh_first; pr; pr = npr) {
1240 npr = pr->ndpr_next;
1241 NDPR_LOCK(pr);
1242 if (pr->ndpr_ifp == ifp) {
1249 pr->ndpr_addrcnt = 0;
1252 * Previously, pr->ndpr_addr is removed as well,
1259 NDPR_ADDREF_LOCKED(pr);
1260 prelist_remove(pr);
1261 NDPR_UNLOCK(pr);
1262 NDPR_REMREF(pr);
1264 NDPR_UNLOCK(pr);
1483 struct nd_prefix *pr;
1517 for (pr = nd_prefix.lh_first; pr; pr = pr->ndpr_next) {
1518 NDPR_LOCK(pr);
1519 if (pr->ndpr_ifp != ifp) {
1520 NDPR_UNLOCK(pr);
1523 if (!(pr->ndpr_stateflags & NDPRF_ONLINK)) {
1524 NDPR_UNLOCK(pr);
1527 if (IN6_ARE_MASKED_ADDR_EQUAL(&pr->ndpr_prefix.sin6_addr,
1528 &addr->sin6_addr, &pr->ndpr_mask)) {
1529 NDPR_UNLOCK(pr);
1532 NDPR_UNLOCK(pr);
2203 struct nd_prefix *pr;
2208 pr = nd_prefix.lh_first;
2221 while (pr && i < PRLSTSIZ) {
2225 NDPR_LOCK(pr);
2227 &pr->ndpr_prefix, NULL, NULL, NULL);
2228 prl_64->prefix[i].raflags = pr->ndpr_raf;
2229 prl_64->prefix[i].prefixlen = pr->ndpr_plen;
2230 prl_64->prefix[i].vltime = pr->ndpr_vltime;
2231 prl_64->prefix[i].pltime = pr->ndpr_pltime;
2232 prl_64->prefix[i].if_index = pr->ndpr_ifp->if_index;
2233 prl_64->prefix[i].expire = pr->ndpr_expire;
2235 pfr = pr->ndpr_advrtrs.lh_first;
2258 NDPR_UNLOCK(pr);
2261 pr = pr->ndpr_next;
2276 while (pr && i < PRLSTSIZ) {
2280 NDPR_LOCK(pr);
2282 &pr->ndpr_prefix, NULL, NULL, NULL);
2283 prl_32->prefix[i].raflags = pr->ndpr_raf;
2284 prl_32->prefix[i].prefixlen = pr->ndpr_plen;
2285 prl_32->prefix[i].vltime = pr->ndpr_vltime;
2286 prl_32->prefix[i].pltime = pr->ndpr_pltime;
2287 prl_32->prefix[i].if_index = pr->ndpr_ifp->if_index;
2288 prl_32->prefix[i].expire = pr->ndpr_expire;
2290 pfr = pr->ndpr_advrtrs.lh_first;
2313 NDPR_UNLOCK(pr);
2316 pr = pr->ndpr_next;
2327 struct nd_prefix *pr;
2437 for (pr = nd_prefix.lh_first; pr; pr = next) {
2440 next = pr->ndpr_next;
2442 NDPR_LOCK(pr);
2443 if (IN6_IS_ADDR_LINKLOCAL(&pr->ndpr_prefix.sin6_addr)) {
2444 NDPR_UNLOCK(pr);
2447 if (ifp != lo_ifp && pr->ndpr_ifp != ifp) {
2448 NDPR_UNLOCK(pr);
2452 NDPR_ADDREF_LOCKED(pr);
2453 NDPR_UNLOCK(pr);
2464 if (ia->ia6_ndpr == pr) {
2490 NDPR_LOCK(pr);
2491 prelist_remove(pr);
2492 NDPR_UNLOCK(pr);
2501 if (pr == next)
2503 NDPR_REMREF(pr);
3683 struct nd_prefix *pr;
3693 for (pr = nd_prefix.lh_first; pr; pr = pr->ndpr_next) {
3707 NDPR_LOCK(pr);
3708 p->prefix = pr->ndpr_prefix;
3710 &p->prefix.sin6_addr, pr->ndpr_ifp) != 0)
3714 p->raflags = pr->ndpr_raf;
3715 p->prefixlen = pr->ndpr_plen;
3716 p->vltime = pr->ndpr_vltime;
3717 p->pltime = pr->ndpr_pltime;
3718 p->if_index = pr->ndpr_ifp->if_index;
3719 p->expire = pr->ndpr_expire;
3720 p->refcnt = pr->ndpr_addrcnt;
3721 p->flags = pr->ndpr_stateflags;
3724 for (pfr = pr->ndpr_advrtrs.lh_first;
3746 NDPR_UNLOCK(pr);
3758 for (pr = nd_prefix.lh_first; pr; pr = pr->ndpr_next) {
3772 NDPR_LOCK(pr);
3773 p_32->prefix = pr->ndpr_prefix;
3775 &p_32->prefix.sin6_addr, pr->ndpr_ifp) != 0)
3779 p_32->raflags = pr->ndpr_raf;
3780 p_32->prefixlen = pr->ndpr_plen;
3781 p_32->vltime = pr->ndpr_vltime;
3782 p_32->pltime = pr->ndpr_pltime;
3783 p_32->if_index = pr->ndpr_ifp->if_index;
3784 p_32->expire = pr->ndpr_expire;
3785 p_32->refcnt = pr->ndpr_addrcnt;
3786 p_32->flags = pr->ndpr_stateflags;
3789 for (pfr = pr->ndpr_advrtrs.lh_first;
3811 NDPR_UNLOCK(pr);