mac_callbacks(9S) Data Structures for Drivers mac_callbacks(9S)NAMEmac_callbacks - MAC callbacks data structure
SYNOPSIS
#include <sys/mac_provider.h>
INTERFACE LEVEL
Solaris architecture specific (Solaris DDI)
DESCRIPTION
The mac_callbacks data structure is used by MAC device drivers to
expose their entry points to the MAC layer. A pointer to an instance of
the mac_callbacks structure is passed through the m_callbacks field of
the mac_register(9S) structure as part of the registration of a device
driver instance through mac_register(9F).
STRUCTURE MEMBERS
uint_t mc_callbacks; /* Denotes which callbacks are set */
mac_getstat_t mc_getstat; /* Get the value of a statistic */
mac_start_t mc_start; /* Start the device */
mac_stop_t mc_stop; /* Stop the device */
mac_setpromisc_t mc_setpromisc; /* Enable or disable promiscuous mode */
mac_multicst_t mc_multicst; /* Enable or disable a multicast addr */
mac_unicst_t mc_unicst; /* Set the unicast MAC address */
mac_tx_t mc_tx; /* Transmit a packet */
mac_ioctl_t mc_ioctl; /* Process an unknown ioctl */
mac_getcapab_t mc_getcapab; /* Get capability information */
mac_set_prop_t mc_setprop; /* Set property value */
mac_get_prop_t mc_getprop; /* Get property value */
mac_prop_info_t mc_propinfo; /* Get property attributes */
Below are descriptions of the members of the mac_callbacks structure
that are visible to the device driver.
mc_callbacks
Flags specifying which ones of the optional entry points are imple‐
mented by the driver. The following flags are supported:
MC_IOCTL
Set by the driver when the mc_ioctl() entry point is present.
MC_GETCAPAB
Set by the driver when the mc_getcapab() entry point is
present.
MC_SETPROP
Set by the driver when the mc_setprop() entry point is present.
MC_GETPROP
Set by the driver when the mc_getprop() entry point is present.
MC_PROPINFO
Set by the driver when the mc_propinfo() entry point is
present.
MC_PROPERTIES
Set by a driver which implements all properties entry points
(mc_setprop(), mc_getprop(), and mc_propinfo()). Setting
MC_PROPERTIES is the equivalent of setting the three flags
MC_SETPROP, MC_GETPROP, and MC_PROPINFO.
mc_getstat
pointer to driver entry point
mc_start
pointer to driver entry point
mc_stop
pointer to driver entry point
mc_setpromisc
pointer to driver entry point
mc_multicst
pointer to driver entry point
mc_unicst
pointer to driver entry point
mc_tx
pointer to driver entry point
mc_ioctl
pointer to driver entry point
mc_getcapab
pointer to driver entry point
mc_setprop
pointer to driver entry point
mc_getprop
pointer to driver entry point
mc_propinfo
pointer to driver entry point
See mac(9E) for more information about MAC driver entry points.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Availability │SUNWhea │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Committed │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOattributes(5), mac_register(9F), mac_register(9S)SunOS 5.10 26 Jul 2010 mac_callbacks(9S)