mac_register man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

mac_register(9S)	  Data Structures for Drivers	      mac_register(9S)

NAME
       mac_register - MAC device driver registration data structure

SYNOPSIS
       #include <sys/mac_provider.h>
       #include <sys/mac_ether.h>

INTERFACE LEVEL
       Solaris architecture specific (Solaris DDI)

DESCRIPTION
       The  mac_register data structure is passed by device drivers to the MAC
       layer when registering using mac_register(9F).

STRUCTURE MEMBERS
	 uint_t		 m_version;		 /* set by framework */
	 const char	 *m_type_ident;
	 void		 *m_driver;
	 dev_info_t	 *m_dip;
	 uint_t		 m_instance;
	 uint8_t	 *m_src_addr;
	 uint8_t	 *m_dst_addr;
	 mac_callbacks_t *m_callbacks;
	 uint_t		 m_min_sdu;
	 uint_t		 m_max_sdu;
	 void		 *m_pdata;
	 size_t		 m_pdata_size;
	 mac_priv_prop_t *m_priv_props;
	 uint32_t	 m_margin;

       The following fields of mac_register_t must be set by the device driver
       before invoking the mac_register()entry point:

       m_version       Set  by mac_alloc(9F), device drivers should not modify
		       this field.

       m_type_ident    Must be set to one of the following  depending  on  the
		       type of device being registered.

		       MAC_PLUGIN_IDENT_ETHER	 Ethernet driver

       m_driver	       Driver  handle, opaque to the framework, usually points
		       to a per-driver instance data structure. Passed back as
		       argument to driver's entry points invoked by the frame‐
		       work.

       m_dip	       Pointer to the driver instance dev_info structure,  see
		       attach(9E).

       m_instance      Used by the driver to specify the instance number to be
		       associated with the MAC being registered.   This	 value
		       should always specified by 0.

       m_src_addr      Pointer	to  the	 primary  MAC address value of the MAC
		       instance.

       m_dst_addr      Pointer to the destination MAC address value of a fixed
		       destination  MAC	 address.  This	 field is optional and
		       should be set to NULL for regular device drivers.

       m_callbacks     Pointer to an instance of the mac_callbacks(9S)	struc‐
		       ture.

       m_min_sdu       Minimum	Service	 Data  Unit  size,  the minimum packet
		       size, not including the MAC header, that the device can
		       transmit.  This	can  be	 zero if the device driver can
		       handle any required padding.

       m_max_sdu       Maximum Service Data  Unit  size,  the  maximum	packet
		       size,  not including the MAC header, that can be trans‐
		       mitted by the device. For Ethernet, this number is com‐
		       monly  referred	to  as	the  MTU (maximum transmission
		       unit.)

       m_priv_props    Array of driver-private property names, terminated by a
		       null pointer.

       m_margin	       Drivers	set  this value to the amount of data in bytes
		       that the device	can  transmit  beyond  m_max_sdu.  For
		       example, if an Ethernet device can handle packets whose
		       payload section is  no  greater	than  1522  bytes  and
		       m_max_sdu  is set to 1500 (as is typical for Ethernet),
		       then m_margin is set to 22.

       See mac_register(9F) for	 more  information  about  the	use  of	 these
       fields.

       The  driver  is responsible for allocating the memory pointed to by the
       fields m_priv_props, m_src_addr, and m_dst_addr. The  driver  can  free
       this memory after the call to mac_register() returns.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Availability		     │SUNWhea			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Committed			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       attributes(5), attach(9E), mac_register(9F), mac_callbacks(9S)

SunOS 5.10			  24 Jul 2010		      mac_register(9S)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net