xref: /csrg-svn/sys/vax/if/if_il.h (revision 9180)
1 /*	if_il.h	4.3	82/11/13	*/
2 
3 /*
4  * Structure of an Ethernet header -- transmit format
5  *	(source address insertion disabled)
6  */
7 struct	il_xheader {
8 	u_char	ilx_dhost[6];		/* Destination Host */
9 	u_char	ilx_shost[6];		/* Source Host */
10 	u_short	ilx_type;		/* Type of packet */
11 };
12 
13 /*
14  * Structure of an Ethernet header -- receive format
15  */
16 struct	il_rheader {
17 	u_char	ilr_status;		/* Frame Status */
18 	u_char	ilr_fill1;
19 	u_short	ilr_length;		/* Frame Length */
20 	u_char	ilr_dhost[6];		/* Destination Host */
21 	u_char	ilr_shost[6];		/* Source Host */
22 	u_short	ilr_type;		/* Type of packet */
23 };
24 
25 #define	ILPUP_PUPTYPE	0x0400		/* PUP protocol */
26 #define	ILPUP_IPTYPE	0x0800		/* IP protocol */
27 
28 /*
29  * The ILPUP_NTRAILER packet types starting at ILPUP_TRAIL have
30  * (type-ILPUP_TRAIL)*512 bytes of data followed
31  * by a PUP type (as given above) and then the (variable-length) header.
32  */
33 #define	ILPUP_TRAIL	0x1000		/* Trailer PUP */
34 #define	ILPUP_NTRAILER	16
35 
36 /*
37  * Structure of statistics record
38  */
39 struct	il_stats {
40 	u_short	ils_fill1;
41 	u_short	ils_length;		/* Length (should be 62) */
42 	u_char	ils_addr[6];		/* Ethernet Address */
43 	u_short	ils_frames;		/* Number of Frames Received */
44 	u_short	ils_rfifo;		/* Number of Frames in Receive FIFO */
45 	u_short	ils_xmit;		/* Number of Frames Transmitted */
46 	u_short	ils_xcollis;		/* Number of Excess Collisions */
47 	u_short	ils_frag;		/* Number of Fragments Received */
48 	u_short	ils_lost;		/* Number of Times Frames Lost */
49 	u_short	ils_multi;		/* Number of Multicasts Accepted */
50 	u_short	ils_rmulti;		/* Number of Multicasts Rejected */
51 	u_short	ils_crc;		/* Number of CRC Errors */
52 	u_short	ils_align;		/* Number of Alignment Errors */
53 	u_short	ils_collis;		/* Number of Collisions */
54 	u_short	ils_owcollis;		/* Number of Out-of-window Collisions */
55 	u_short	ils_fill2[8];
56 	char	ils_module[8];		/* Module ID */
57 	char	ils_firmware[8];	/* Firmware ID */
58 };
59 
60 /*
61  * Structure of Collision Delay Time Record
62  */
63 struct	il_collis {
64 	u_short	ilc_fill1;
65 	u_short	ilc_length;		/* Length (should be 0-32) */
66 	u_short	ilc_delay[16];		/* Delay Times */
67 };
68