diff options
Diffstat (limited to 'net/bootp.h')
| -rw-r--r-- | net/bootp.h | 54 | 
1 files changed, 29 insertions, 25 deletions
| diff --git a/net/bootp.h b/net/bootp.h index 50625abea..ce7373454 100644 --- a/net/bootp.h +++ b/net/bootp.h @@ -10,7 +10,7 @@  #define __BOOTP_H__  #ifndef __NET_H__ -#include	<net.h> +#include <net.h>  #endif /* __NET_H__ */  /**********************************************************************/ @@ -19,35 +19,39 @@   *	BOOTP header.   */  #if defined(CONFIG_CMD_DHCP) -#define OPT_SIZE 312	/* Minimum DHCP Options size per RFC2131 - results in 576 byte pkt */ +/* Minimum DHCP Options size per RFC2131 - results in 576 byte pkt */ +#define OPT_SIZE 312 +#if defined(CONFIG_BOOTP_VENDOREX) +extern u8 *dhcp_vendorex_prep(u8 *e); /*rtn new e after add own opts. */ +extern u8 *dhcp_vendorex_proc(u8 *e); /*rtn next e if mine,else NULL  */ +#endif  #else  #define OPT_SIZE 64  #endif -typedef struct -{ -	uchar		bp_op;		/* Operation				*/ +struct Bootp_t { +	uchar		bp_op;		/* Operation			*/  # define OP_BOOTREQUEST	1  # define OP_BOOTREPLY	2 -	uchar		bp_htype;	/* Hardware type			*/ +	uchar		bp_htype;	/* Hardware type		*/  # define HWT_ETHER	1 -	uchar		bp_hlen;	/* Hardware address length		*/ +	uchar		bp_hlen;	/* Hardware address length	*/  # define HWL_ETHER	6 -	uchar		bp_hops;	/* Hop count (gateway thing)		*/ -	ulong		bp_id;		/* Transaction ID			*/ -	ushort		bp_secs;	/* Seconds since boot			*/ -	ushort		bp_spare1;	/* Alignment				*/ -	IPaddr_t	bp_ciaddr;	/* Client IP address			*/ -	IPaddr_t	bp_yiaddr;	/* Your (client) IP address		*/ -	IPaddr_t	bp_siaddr;	/* Server IP address			*/ -	IPaddr_t	bp_giaddr;	/* Gateway IP address			*/ -	uchar		bp_chaddr[16];	/* Client hardware address		*/ -	char		bp_sname[64];	/* Server host name			*/ -	char		bp_file[128];	/* Boot file name			*/ -	char		bp_vend[OPT_SIZE];	/* Vendor information			*/ -}	Bootp_t; +	uchar		bp_hops;	/* Hop count (gateway thing)	*/ +	ulong		bp_id;		/* Transaction ID		*/ +	ushort		bp_secs;	/* Seconds since boot		*/ +	ushort		bp_spare1;	/* Alignment			*/ +	IPaddr_t	bp_ciaddr;	/* Client IP address		*/ +	IPaddr_t	bp_yiaddr;	/* Your (client) IP address	*/ +	IPaddr_t	bp_siaddr;	/* Server IP address		*/ +	IPaddr_t	bp_giaddr;	/* Gateway IP address		*/ +	uchar		bp_chaddr[16];	/* Client hardware address	*/ +	char		bp_sname[64];	/* Server host name		*/ +	char		bp_file[128];	/* Boot file name		*/ +	char		bp_vend[OPT_SIZE];	/* Vendor information	*/ +}; -#define BOOTP_HDR_SIZE	sizeof (Bootp_t) +#define BOOTP_HDR_SIZE	sizeof(struct Bootp_t)  #define BOOTP_SIZE	(ETHER_HDR_SIZE + IP_HDR_SIZE + BOOTP_HDR_SIZE)  /**********************************************************************/ @@ -56,16 +60,16 @@ typedef struct   */  /* bootp.c */ -extern ulong	BootpID;		/* ID of cur BOOTP request		*/ -extern char	BootFile[128];		/* Boot file name			*/ +extern ulong	BootpID;		/* ID of cur BOOTP request	*/ +extern char	BootFile[128];		/* Boot file name		*/  extern int	BootpTry;  #ifdef CONFIG_BOOTP_RANDOM_DELAY -extern ulong	seed1, seed2;		/* seed for random BOOTP delay		*/ +extern ulong	seed1, seed2;		/* seed for random BOOTP delay	*/  #endif  /* Send a BOOTP request */ -extern void	BootpRequest (void); +extern void BootpRequest(void);  /****************** DHCP Support *********************/  extern void DhcpRequest(void); |