Lines Matching refs:pi

157     struct phyint *pi);
169 static void free_phyint(struct phyint *pi);
170 static struct logint *find_logint(struct phyint *pi, char *name);
171 static struct logint *add_logint(struct phyint *pi, char *name);
174 static void deleted_phyint(struct phyint *pi, int s,
606 struct phyint *pi; in advertise() local
618 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in advertise()
627 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in advertise()
656 pi->pi_logical_first); in advertise()
659 pi->pi_logical_first); in advertise()
666 pi); in advertise()
682 logdebug("on interface %s\n", pi->pi_name); in advertise()
1129 struct phyint *pi; in sendbcast() local
1134 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in sendbcast()
1136 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in sendbcast()
1198 struct phyint *pi; in sendmcast() local
1203 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in sendmcast()
1205 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in sendmcast()
1282 struct phyint *pi; in force_preference() local
1285 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in force_preference()
1286 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in force_preference()
1308 struct phyint *pi; in initifs() local
1319 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in initifs()
1320 pi->pi_state |= ST_MARKED; in initifs()
1321 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in initifs()
1384 pi = find_phyint(phyintname); in initifs()
1385 if (pi == NULL) { in initifs()
1386 pi = add_phyint(phyintname); in initifs()
1387 if (pi == NULL) { in initifs()
1395 pi->pi_state &= ~ST_MARKED; in initifs()
1397 li = find_logint(pi, ifreq.ifr_name); in initifs()
1436 li = add_logint(pi, ifreq.ifr_name); in initifs()
1470 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in initifs()
1471 if (pi->pi_state & ST_MARKED) { in initifs()
1473 pi->pi_state |= ST_DELETED; in initifs()
1475 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in initifs()
1481 if (!(pi->pi_state & ST_DELETED)) in initifs()
1488 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in initifs()
1489 if (pi->pi_state & ST_DELETED) { in initifs()
1496 deleted_phyint(pi, s, joinaddr); in initifs()
1498 for (li = pi->pi_logical_first; li != NULL; in initifs()
1508 for (pi = phyint; pi != NULL; pi = nextpi) { in initifs()
1509 nextpi = pi->pi_next; in initifs()
1510 for (li = pi->pi_logical_first; li != NULL; in initifs()
1516 if (pi->pi_state & ST_DELETED) in initifs()
1517 free_phyint(pi); in initifs()
1631 struct phyint *pi; in find_directly_connected_logint() local
1635 pi = phyint; in find_directly_connected_logint()
1637 pi = opi; in find_directly_connected_logint()
1639 for (; pi != NULL; pi = pi->pi_next) { in find_directly_connected_logint()
1640 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in find_directly_connected_logint()
1664 struct phyint *pi; in report_interfaces() local
1668 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in report_interfaces()
1670 pi->pi_name, pi->pi_state); in report_interfaces()
1671 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in report_interfaces()
1690 struct phyint *pi; in find_phyint() local
1692 for (pi = phyint; pi != NULL; pi = pi->pi_next) { in find_phyint()
1693 if (strcmp(pi->pi_name, name) == 0) in find_phyint()
1694 return (pi); in find_phyint()
1703 struct phyint *pi; in add_phyint() local
1705 pi = malloc(sizeof (*pi)); in add_phyint()
1706 if (pi == NULL) in add_phyint()
1708 bzero((char *)pi, sizeof (*pi)); in add_phyint()
1710 strncpy(pi->pi_name, name, sizeof (pi->pi_name)); in add_phyint()
1712 pi->pi_next = phyint; in add_phyint()
1713 pi->pi_prev = NULL; in add_phyint()
1715 phyint->pi_prev = pi; in add_phyint()
1716 phyint = pi; in add_phyint()
1717 return (pi); in add_phyint()
1721 free_phyint(struct phyint *pi) in free_phyint() argument
1723 assert(pi->pi_logical_first == NULL); in free_phyint()
1724 assert(pi->pi_logical_last == NULL); in free_phyint()
1726 if (pi->pi_prev == NULL) { in free_phyint()
1728 assert(phyint == pi); in free_phyint()
1729 phyint = pi->pi_next; in free_phyint()
1731 assert(pi->pi_prev->pi_next == pi); in free_phyint()
1732 pi->pi_prev->pi_next = pi->pi_next; in free_phyint()
1734 if (pi->pi_next != NULL) { in free_phyint()
1735 assert(pi->pi_next->pi_prev == pi); in free_phyint()
1736 pi->pi_next->pi_prev = pi->pi_prev; in free_phyint()
1738 free(pi); in free_phyint()
1742 find_logint(struct phyint *pi, char *name) in find_logint() argument
1746 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in find_logint()
1758 add_logint(struct phyint *pi, char *name) in add_logint() argument
1769 li->li_prev = pi->pi_logical_last; in add_logint()
1770 if (pi->pi_logical_last == NULL) { in add_logint()
1772 assert(pi->pi_logical_first == NULL); in add_logint()
1773 pi->pi_logical_first = li; in add_logint()
1775 pi->pi_logical_last->li_next = li; in add_logint()
1778 li->li_physical = pi; in add_logint()
1779 pi->pi_logical_last = li; in add_logint()
1787 struct phyint *pi; in free_logint() local
1789 pi = li->li_physical; in free_logint()
1792 assert(pi->pi_logical_first == li); in free_logint()
1793 pi->pi_logical_first = li->li_next; in free_logint()
1800 assert(pi->pi_logical_last == li); in free_logint()
1801 pi->pi_logical_last = li->li_prev; in free_logint()
1812 deleted_phyint(struct phyint *pi, int s, in deleted_phyint() argument
1818 logdebug("Deleting physical interface %s\n", pi->pi_name); in deleted_phyint()
1820 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in deleted_phyint()
1823 for (li = pi->pi_logical_first; li != NULL; li = li->li_next) { in deleted_phyint()
1878 struct phyint *pi; in deleted_logint() local
1889 pi = li->li_physical; in deleted_logint()
1890 assert(pi->pi_state & ST_JOINED); in deleted_logint()
1924 for (oli = pi->pi_logical_first; oli != NULL; in deleted_logint()
1940 pi->pi_state |= ST_JOINED; in deleted_logint()