Lines Matching refs:unit
413 u_int unit; in if_clone_simple() local
424 for (unit = 0; unit < minifs; unit++) { in if_clone_simple()
428 snprintf(name, IFNAMSIZ, "%s%d", ifc->ifc_name, unit); in if_clone_simple()
579 ifc_name2unit(const char *name, int *unit) in ifc_name2unit() argument
588 *unit = -1; in ifc_name2unit()
593 for (*unit = 0; *cp != '\0'; cp++) { in ifc_name2unit()
598 if (*unit > cutoff || in ifc_name2unit()
599 (*unit == cutoff && *cp - '0' > cutlim)) in ifc_name2unit()
601 *unit = (*unit * 10) + (*cp - '0'); in ifc_name2unit()
609 ifc_alloc_unit_specific(struct if_clone *ifc, int *unit) in ifc_alloc_unit_specific() argument
613 if (*unit > ifc->ifc_maxunit) in ifc_alloc_unit_specific()
616 if (alloc_unr_specific(ifc->ifc_unrhdr, *unit) == -1) in ifc_alloc_unit_specific()
619 snprintf(name, IFNAMSIZ, "%s%d", ifc->ifc_name, *unit); in ifc_alloc_unit_specific()
621 free_unr(ifc->ifc_unrhdr, *unit); in ifc_alloc_unit_specific()
631 ifc_alloc_unit_next(struct if_clone *ifc, int *unit) in ifc_alloc_unit_next() argument
635 *unit = alloc_unr(ifc->ifc_unrhdr); in ifc_alloc_unit_next()
636 if (*unit == -1) in ifc_alloc_unit_next()
639 free_unr(ifc->ifc_unrhdr, *unit); in ifc_alloc_unit_next()
641 error = ifc_alloc_unit_specific(ifc, unit); in ifc_alloc_unit_next()
645 (*unit)++; in ifc_alloc_unit_next()
652 ifc_alloc_unit(struct if_clone *ifc, int *unit) in ifc_alloc_unit() argument
654 if (*unit < 0) in ifc_alloc_unit()
655 return (ifc_alloc_unit_next(ifc, unit)); in ifc_alloc_unit()
657 return (ifc_alloc_unit_specific(ifc, unit)); in ifc_alloc_unit()
661 ifc_free_unit(struct if_clone *ifc, int unit) in ifc_free_unit() argument
664 free_unr(ifc->ifc_unrhdr, unit); in ifc_free_unit()
694 int unit; in ifc_simple_create() local
697 err = ifc_name2unit(name, &unit); in ifc_simple_create()
701 wildcard = (unit < 0); in ifc_simple_create()
703 err = ifc_alloc_unit(ifc, &unit); in ifc_simple_create()
707 err = ifc->ifcs_create(ifc, unit, params); in ifc_simple_create()
709 ifc_free_unit(ifc, unit); in ifc_simple_create()
716 if (snprintf(dp, len - (dp-name), "%d", unit) > in ifc_simple_create()
733 int unit; in ifc_simple_destroy() local
735 unit = ifp->if_dunit; in ifc_simple_destroy()
737 if (unit < ifc->ifcs_minifs) in ifc_simple_destroy()
742 ifc_free_unit(ifc, unit); in ifc_simple_destroy()