Lines Matching refs:nodes

33 					  ipf_rdx_node_t nodes[2], int *);
99 buildnodes(addrfamily_t *addr, addrfamily_t *mask, ipf_rdx_node_t nodes[2]) in buildnodes()
116 bzero(&nodes[0], sizeof(ipf_rdx_node_t) * 2); in buildnodes()
117 nodes[0].maskbitcount = maskbits; in buildnodes()
118 nodes[0].index = -1 - (ADF_OFF_BITS + maskbits); in buildnodes()
119 nodes[0].addrkey = (u_32_t *)addr; in buildnodes()
120 nodes[0].maskkey = (u_32_t *)mask; in buildnodes()
121 nodes[0].addroff = nodes[0].addrkey + masklen; in buildnodes()
122 nodes[0].maskoff = nodes[0].maskkey + masklen; in buildnodes()
123 nodes[0].parent = &nodes[1]; in buildnodes()
124 nodes[0].offset = masklen; in buildnodes()
125 nodes[0].lastmask = lastmask; in buildnodes()
126 nodes[1].offset = masklen; in buildnodes()
127 nodes[1].left = &nodes[0]; in buildnodes()
128 nodes[1].maskbitcount = maskbits; in buildnodes()
130 (void) strcpy(nodes[0].name, "_BUILD.0"); in buildnodes()
131 (void) strcpy(nodes[1].name, "_BUILD.1"); in buildnodes()
319 ipf_rx_insert(ipf_rdx_head_t *head, ipf_rdx_node_t nodes[2], int *dup) in ipf_rx_insert()
338 addr = nodes[0].addrkey; in ipf_rx_insert()
361 nodes[1].index = nlen; in ipf_rx_insert()
362 nodes[1].bitmask = htonl(0x80000000 >> (nlen & 0x1f)); in ipf_rx_insert()
363 nodes[0].offset = nlen / 32; in ipf_rx_insert()
364 nodes[1].offset = nlen / 32; in ipf_rx_insert()
375 key = nodes[0].addrkey; in ipf_rx_insert()
386 prev->left = &nodes[1]; in ipf_rx_insert()
388 prev->right = &nodes[1]; in ipf_rx_insert()
390 cur->parent = &nodes[1]; in ipf_rx_insert()
391 nodes[1].parent = prev; in ipf_rx_insert()
392 if ((key[nodes[1].offset] & nodes[1].bitmask) == 0) { in ipf_rx_insert()
393 nodes[1].right = cur; in ipf_rx_insert()
395 nodes[1].right = &nodes[0]; in ipf_rx_insert()
396 nodes[1].left = cur; in ipf_rx_insert()
399 nodeoff = nodes[0].offset; in ipf_rx_insert()
400 nodekey = nodes[0].addrkey[nodeoff]; in ipf_rx_insert()
401 nodemask = nodes[0].lastmask; in ipf_rx_insert()
402 nodebits = nodes[0].maskbitcount; in ipf_rx_insert()
409 for (cur = nodes[1].parent; cur->root == 0; cur = cur->parent) { in ipf_rx_insert()
422 mask->node = &nodes[0]; in ipf_rx_insert()
424 mask->mask = nodes[0].maskkey; in ipf_rx_insert()
425 nodes[0].mymask = mask; in ipf_rx_insert()
439 pmask = &nodes[0].masks; in ipf_rx_insert()
448 cur = nodes[1].right; in ipf_rx_insert()
453 ipf_rx_attach_mask(&nodes[0], mask); in ipf_rx_insert()
459 cur = nodes[1].left; in ipf_rx_insert()
460 if (cur->root == 0 && cur != &nodes[0]) { in ipf_rx_insert()
464 ipf_rx_attach_mask(&nodes[0], mask); in ipf_rx_insert()
470 return (&nodes[0]); in ipf_rx_insert()
497 ipf_rdx_node_t *nodes) in ipf_rx_addroute() argument
504 buildnodes(addr, mask, nodes); in ipf_rx_addroute()
505 x = ipf_rx_insert(head, nodes, &dup); in ipf_rx_addroute()
510 node = &nodes[0]; in ipf_rx_addroute()
532 nodes[0].dupkey = x; in ipf_rx_addroute()
533 prev->dupkey = &nodes[0]; in ipf_rx_addroute()
534 nodes[0].parent = prev; in ipf_rx_addroute()
536 x->parent = &nodes[0]; in ipf_rx_addroute()
538 nodes[0].dupkey = x->dupkey; in ipf_rx_addroute()
540 nodes[0].parent = prev; in ipf_rx_addroute()
541 x->parent = &nodes[0]; in ipf_rx_addroute()
543 prev->left = &nodes[0]; in ipf_rx_addroute()
545 prev->right = &nodes[0]; in ipf_rx_addroute()
549 return &nodes[0]; in ipf_rx_addroute()
801 node = ptr->nodes; in ipf_rx_inithead()
919 struct ipf_rdx_node nodes[2]; member
1135 ipf_rdx_node_t *node = &stp->nodes[0];
1137 if (stp->nodes[0].index > 0)
1138 stp = (myst_t *)&stp->nodes[-1];
1189 GNAME(&rnh->nodes[0]),
1190 rnh->nodes[0].index, GNAME(rnh->nodes[0].parent),
1191 GNAME(rnh->nodes[0].left), GNAME(rnh->nodes[0].right));
1193 GNAME(&rnh->nodes[1]),
1194 rnh->nodes[1].index, GNAME(rnh->nodes[1].parent),
1195 GNAME(rnh->nodes[1].left), GNAME(rnh->nodes[1].right));
1197 GNAME(&rnh->nodes[2]),
1198 rnh->nodes[2].index, GNAME(rnh->nodes[2].parent),
1199 GNAME(rnh->nodes[2].left), GNAME(rnh->nodes[2].right));
1372 stp->nodes[0].parent = &stp->nodes[0];
1373 stp->nodes[1].parent = &stp->nodes[1];
1398 rn = ipf_rx_addroute(rnh, &stp->dst, &stp->mask, stp->nodes);
1420 rn = &s1->nodes[1]; in checktree()