-/* @(#) $Header: /tcpdump/master/tcpdump/ether.h,v 1.4 2000-10-03 02:54:55 itojun Exp $ (LBL) */
/*
* Copyright (c) 1982, 1986, 1993
* The Regents of the University of California. All rights reserved.
#define ETHER_ADDR_LEN 6
/*
- * Ethernet address - 6 octets
+ * Structure of an Ethernet header.
*/
-struct ether_addr {
- u_int8_t ether_addr_octet[ETHER_ADDR_LEN];
+struct ether_header {
+ uint8_t ether_dhost[ETHER_ADDR_LEN];
+ uint8_t ether_shost[ETHER_ADDR_LEN];
+ uint16_t ether_length_type;
};
/*
- * Structure of a 10Mb/s Ethernet header.
+ * Length of an Ethernet header; note that some compilers may pad
+ * "struct ether_header" to a multiple of 4 bytes, for example, so
+ * "sizeof (struct ether_header)" may not give the right answer.
*/
-struct ether_header {
- u_int8_t ether_dhost[ETHER_ADDR_LEN];
- u_int8_t ether_shost[ETHER_ADDR_LEN];
- u_int16_t ether_type;
-};
+#define ETHER_HDRLEN 14