Lines Matching defs:head

142 rn_search(const void *v_arg, struct radix_node *head)
147 for (x = head, v = v_arg; x->rn_bit >= 0;) {
161 rn_search_m(const void *v_arg, struct radix_node *head, void *m_arg)
166 for (x = head; x->rn_bit >= 0;) {
203 * Search for exact match in given @head.
209 rn_lookup(const void *v_arg, const void *m_arg, struct radix_head *head)
218 x = rn_addmask(m_arg, head->rnh_masks, 1,
219 head->rnh_treetop->rn_offset);
224 x = rn_match(v_arg, head);
235 if ((x = rn_match(v_arg, head)) == NULL)
268 * Search for longest-prefix match in given @head
271 rn_match(const void *v_arg, struct radix_head *head)
274 struct radix_node *t = head->rnh_treetop, *x;
434 rn_insert(void *v_arg, struct radix_head *head, int *dupentry,
438 struct radix_node *top = head->rnh_treetop;
529 x = rn_search(addmask_key, maskhead->head.rnh_treetop);
539 x = rn_insert(cp, &maskhead->head, &maskduplicated, x);
607 rn_addroute(void *v_arg, const void *n_arg, struct radix_head *head,
612 struct radix_node *saved_tt, *top = head->rnh_treetop;
626 x = rn_addmask(n_arg, head->rnh_masks, 0, top->rn_offset);
636 saved_tt = tt = rn_insert(v, head, &keyduplicated, treenodes);
656 * the head of the list.
663 /* link in at head of list */
764 rn_delete(const void *v_arg, const void *netmask_arg, struct radix_head *head)
775 x = head->rnh_treetop;
788 x = rn_addmask(netmask, head->rnh_masks, 1, head_off);
846 * saved_tt is the head of the dupekey chain.
849 /* remove from head of chain */
1122 rn_detachhead_internal(struct radix_head *head)
1125 KASSERT((head != NULL),
1126 ("%s: head already freed", __func__));
1129 R_Free(head);
1135 rn_inithead(void **head, int off)
1140 rnh = *head;
1143 if (*head != NULL)
1158 rn_inithead_internal(&rmh->head, rmh->mask_nodes, 0);
1159 *head = rnh;
1186 rn_detachhead(void **head)
1190 KASSERT((head != NULL && *head != NULL),
1191 ("%s: head already freed", __func__));
1193 rnh = (struct radix_node_head *)(*head);
1195 rn_walktree(&rnh->rh.rnh_masks->head, rn_freeentry, rnh->rh.rnh_masks);
1196 rn_detachhead_internal(&rnh->rh.rnh_masks->head);
1199 *head = NULL;