man pages section 9: DDI and DKI Properties and Data Structures

Exit Print View

Updated: July 2014
 
 

mac_callbacks(9S)

Name

mac_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 implemented 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
system/header
Interface Stability
Committed

See also

attributes(5), mac_register(9F) , mac_register(9S)