david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

[netdevice] Fix incorrect value for MAX_LL_HEADER_LEN

MAX_LL_HEADER_LEN is erroneously set to 6 rather than 14, resulting
in possible data corruption whenever we send an ARP packet.

Fix value and add a comment explaining why MAX_LL_ADDR_LEN is greater
than MAX_LL_HEADER_LEN.

Reported-by: Joshua Oreman <oremanj@rwcr.net>
This commit is contained in:
Michael Brown 2009-06-05 01:06:07 +01:00
parent 4c5f00f879
commit edfbd4e4fa
1 changed files with 11 additions and 3 deletions

View File

@ -21,11 +21,19 @@ struct net_protocol;
struct ll_protocol;
struct device;
/** Maximum length of a link-layer address */
/** Maximum length of a link-layer address
*
* The longest currently-supported link-layer address is for IPoIB.
*/
#define MAX_LL_ADDR_LEN 20
/** Maximum length of a link-layer header */
#define MAX_LL_HEADER_LEN 6
/** Maximum length of a link-layer header
*
* The longest currently-supported link-layer header is for Ethernet.
* (The IPoIB link-layer pseudo-header doesn't actually include
* link-layer addresses; see ipoib.c for details).
*/
#define MAX_LL_HEADER_LEN 14
/** Maximum length of a network-layer address */
#define MAX_NET_ADDR_LEN 4