27 lines
		
	
	
		
			768 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			768 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*	arp.h - Address Resolution Protocol packet format.
 | |
|  *							Author: Kees J. Bot
 | |
|  *								16 Dec 2000
 | |
|  */
 | |
| #ifndef ARP_H
 | |
| #define ARP_H
 | |
| 
 | |
| typedef struct arp46 {
 | |
| 	ether_addr_t	dstaddr;
 | |
| 	ether_addr_t	srcaddr;
 | |
| 	ether_type_t	ethtype;	/* ARP_PROTO. */
 | |
| 	u16_t		hdr, pro;	/* ARP_ETHERNET & ETH_IP_PROTO. */
 | |
| 	u8_t		hln, pln;	/* 6 & 4. */
 | |
| 	u16_t		op;		/* ARP_REQUEST or ARP_REPLY. */
 | |
| 	ether_addr_t	sha;		/* Source hardware address. */
 | |
| 	u8_t		spa[4];		/* Source protocol address. */
 | |
| 	ether_addr_t	tha;		/* Likewise for the target. */
 | |
| 	u8_t		tpa[4];
 | |
| 	char		padding[60 - (4*6 + 2*4 + 4*2 + 2*1)];
 | |
| } arp46_t;
 | |
| 
 | |
| #define ARP_ETHERNET	1	/* ARP on Ethernet. */
 | |
| #define ARP_REQUEST	1	/* A request for an IP address. */
 | |
| #define ARP_REPLY	2	/* A reply to a request. */
 | |
| 
 | |
| #endif /* ARP_H */
 | 
