Changeset View
Changeset View
Standalone View
Standalone View
sys/net/if_var.h
Show First 20 Lines • Show All 295 Lines • ▼ Show 20 Lines | |||||
* Structure defining a network interface. | * Structure defining a network interface. | ||||
*/ | */ | ||||
struct ifnet { | struct ifnet { | ||||
/* General book keeping of interface lists. */ | /* General book keeping of interface lists. */ | ||||
CK_STAILQ_ENTRY(ifnet) if_link; /* all struct ifnets are chained (CK_) */ | CK_STAILQ_ENTRY(ifnet) if_link; /* all struct ifnets are chained (CK_) */ | ||||
LIST_ENTRY(ifnet) if_clones; /* interfaces of a cloner */ | LIST_ENTRY(ifnet) if_clones; /* interfaces of a cloner */ | ||||
CK_STAILQ_HEAD(, ifg_list) if_groups; /* linked list of groups per if (CK_) */ | CK_STAILQ_HEAD(, ifg_list) if_groups; /* linked list of groups per if (CK_) */ | ||||
/* protected by if_addr_lock */ | /* protected by if_addr_lock */ | ||||
u_char if_alloctype; /* if_type at time of allocation */ | uint8_t if_alloctype; /* if_type at time of allocation */ | ||||
uint8_t if_numa_domain; /* NUMA domain of device */ | uint8_t if_numa_domain; /* NUMA domain of device */ | ||||
uint16_t if_index; /* numeric abbreviation for this if */ | |||||
uint16_t if_idx; /* immutable index ... */ | |||||
uint16_t if_idxgen; /* ... and its generation count */ | |||||
/* Driver and protocol specific information that remains stable. */ | /* Driver and protocol specific information that remains stable. */ | ||||
void *if_softc; /* pointer to driver state */ | void *if_softc; /* pointer to driver state */ | ||||
void *if_llsoftc; /* link layer softc */ | void *if_llsoftc; /* link layer softc */ | ||||
void *if_l2com; /* pointer to protocol bits */ | void *if_l2com; /* pointer to protocol bits */ | ||||
const char *if_dname; /* driver name */ | const char *if_dname; /* driver name */ | ||||
int if_dunit; /* unit or IF_DUNIT_NONE */ | int if_dunit; /* unit or IF_DUNIT_NONE */ | ||||
u_short if_index; /* numeric abbreviation for this if */ | |||||
short if_index_reserved; /* spare space to grow if_index */ | |||||
char if_xname[IFNAMSIZ]; /* external name (name + unit) */ | char if_xname[IFNAMSIZ]; /* external name (name + unit) */ | ||||
char *if_description; /* interface description */ | char *if_description; /* interface description */ | ||||
/* Variable fields that are touched by the stack and drivers. */ | /* Variable fields that are touched by the stack and drivers. */ | ||||
int if_flags; /* up/down, broadcast, etc. */ | int if_flags; /* up/down, broadcast, etc. */ | ||||
int if_drv_flags; /* driver-managed status flags */ | int if_drv_flags; /* driver-managed status flags */ | ||||
int if_capabilities; /* interface features & capabilities */ | int if_capabilities; /* interface features & capabilities */ | ||||
int if_capenable; /* enabled features & capabilities */ | int if_capenable; /* enabled features & capabilities */ | ||||
▲ Show 20 Lines • Show All 478 Lines • Show Last 20 Lines |