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