Lines Matching refs:rn
345 rn_nodeprint(struct radix_node *rn, rn_printer_t printer, void *arg,
349 delim, ((void *)rn == arg) ? "*" : "", rn, rn->rn_p,
350 rn->rn_l, rn->rn_r);
369 struct radix_node *dup, *rn;
375 rn = rn_walkfirst(h->rnh_treetop, printer, arg);
379 for (dup = rn; dup != NULL; dup = dup->rn_dupedkey) {
385 rn = rn_walknext(rn, printer, arg);
386 if (rn->rn_flags & RNF_ROOT)
758 struct radix_node *rn)
947 rn_walknext(struct radix_node *rn, rn_printer_t printer, void *arg)
950 while (rn->rn_p->rn_r == rn && (rn->rn_flags & RNF_ROOT) == 0) {
953 rn = rn->rn_p;
956 rn_nodeprint(rn->rn_p, printer, arg, "");
958 for (rn = rn->rn_p->rn_r; rn->rn_b >= 0;) {
961 rn = rn->rn_l;
963 return rn;
967 rn_walkfirst(struct radix_node *rn, rn_printer_t printer, void *arg)
970 while (rn->rn_b >= 0) {
973 rn = rn->rn_l;
975 return rn;
985 struct radix_node *base, *next, *rn;
991 rn = rn_walkfirst(h->rnh_treetop, NULL, NULL);
993 base = rn;
994 next = rn_walknext(rn, NULL, NULL);
996 while ((rn = base) != NULL) {
997 base = rn->rn_dupedkey;
998 if (!(rn->rn_flags & RNF_ROOT) && (error = (*f)(rn, w)))
1001 rn = next;
1002 if (rn->rn_flags & RNF_ROOT)
1013 struct radix_node *base, *next, *rn;
1019 rn = rn_walkfirst(h->rnh_treetop, NULL, NULL);
1021 base = rn;
1022 next = rn_walknext(rn, NULL, NULL);
1024 while ((rn = base) != NULL) {
1025 base = rn->rn_dupedkey;
1026 if (!(rn->rn_flags & RNF_ROOT)) {
1027 matched = (*matcher)(rn, w);
1029 return rn;
1032 rn = next;
1033 if (rn->rn_flags & RNF_ROOT)