Metropoli BBS
VIEWER: macstat.h MODE: TEXT (ASCII)
/* The following are used for the 802.3 (LLC) implimentation */

#define	MAC_NOT_BOUND	(-1)		/* indication of non-boundedness */
#define	MAC_DEF_SAP	((unsigned long) 0xfffffffe) /* Default 802.3 SAP */
#define	MAC_NETWARE_SAP	((unsigned long) 0x000000ff) /* NetWare SAP */
#define	MAC_MIN_SAP	((short) 0x05dc) /* > indicates ethernet, < 802.3 */
#define MAC_MIN_PKLEN	((long) 46)	/* min packet len for 802.3 */
#define ETHER_IFSPEED	(10*1000000)	/* ethernet interface speed, bits/sec */

/* ioctls for the MAC drivers */

#define MACIOC(x)       	(('M' << 8) | (x))

#define MACIOC_DIAG		MACIOC(1)	/* Set MAC diagnostics */
#define MACIOC_UNITSEL		MACIOC(2)	/* MAC unit select */
#define MACIOC_SETMCA		MACIOC(3)	/* Multicast set */
#define MACIOC_DELMCA		MACIOC(4)	/* Multicast delete */
#define MACIOC_CLRMCA		MACIOC(5)	/* Flush multicast table */
#define MACIOC_GETMCA		MACIOC(6)	/* Get multicast table */
#define MACIOC_GETIFSTAT	MACIOC(7)	/* Dump BSD statistics */
#define MACIOC_GETADDR		MACIOC(8)	/* Get MAC address */
#define MACIOC_SETADDR		MACIOC(9)	/* Set MAC address */
#define MACIOC_GETSTAT		MACIOC(10)	/* Get MAC statistics */
#define MACIOC_PROMISC		MACIOC(11)	/* Set Promiscuous Reception */
#define MACIOC_GETRADDR		MACIOC(12)	/* Get factory MAC Address */
#define MACIOC_CLRSTAT		MACIOC(13)	/* Clear MAC statistics */
#define MACIOC_GETMCSIZ		MACIOC(14)	/* Get multicast table size */
#define MACIOC_HWDEPEND		MACIOC(15)	/* Hardware dependent */

#define MACIOC_LOCALSTAT	MACIOC(254)	/* dump statistics */

/* statistics structure (for the MACIOC_GETSTAT ioctl) */

typedef struct mac_stats {
	unsigned long mac_frame_xmit;	/* Frames Transmitted */
	unsigned long mac_bcast_xmit;	/* Broadcast Frames Transmitted */
	unsigned long mac_mcast_xmit;	/* Multicast Frames Transmitted */
	unsigned long mac_lbolt_xmit;	/* Frames Transmitted per Second */
	unsigned long mac_frame_recv;	/* Frames Received */
	unsigned long mac_bcast_recv;	/* Broadcast Frames Received */
	unsigned long mac_mcast_recv;	/* Multicast Frames Received */
	unsigned long mac_lbolt_recv;	/* Frames Received per Second */
	unsigned long mac_frame_def;	/* Frames Deferred */
	unsigned long mac_collisions;	/* Total Collisions */
	unsigned long mac_frame_coll;	/* Frames Involved in a Collision */
	unsigned long mac_oframe_coll;	/* Out of Frame Collisions */
	unsigned long mac_xs_coll;	/* Dropped Due To Excess Collisions */
	unsigned long mac_frame_nosr;	/* Dropped Due To Lack of STREAMS */
	unsigned long mac_no_resource;	/* Dropped Due To Lack of Resources */
	unsigned long mac_badsum;	/* Bad Checksum Received */
	unsigned long mac_align;	/* Bad Alignment Received */
	unsigned long mac_badlen;	/* Bad Length Received */
	unsigned long mac_badsap;	/* Bad SAP Received */
	unsigned long mac_mcast_rjct;	/* Multicast Frames Rejected */
	unsigned long mac_carrier;	/* Errors Due To Lost Carrier */
	unsigned long mac_badcts;	/* Errors Due To Lost CTS */
	unsigned long mac_baddma;	/* Errors Due To Over/Under Runs */
	unsigned long mac_timeouts;	/* Device Timeouts */
	unsigned long mac_intr;		/* Device Interrupts */
	unsigned long mac_spur_intr;	/* Spurious Interrupts */
	unsigned long mac_ioctets;	/* received octets */
	unsigned long mac_ooctets;	/* transmitted octets */
	unsigned long mac_ifspeed;	/* net interface speed in bits/sec */
	unsigned long mac_reserved[1];	/* Reserved */
} mac_stats_t;
[ RETURN TO DIRECTORY ]