61 lines
2 KiB
C
61 lines
2 KiB
C
/*
|
|
*
|
|
* Modifications: $Header: W:/LCS/ARCHIVES/preboot/lsa2/inc/bootp.h_v 1.4 Apr 04 1997 13:57:00 GRGUSTAF $
|
|
*
|
|
* Copyright(c) 1997 by Intel Corporation. All Rights Reserved.
|
|
*
|
|
*/
|
|
|
|
#ifndef __BOOTP_H
|
|
#define __BOOTP_H
|
|
|
|
|
|
#include "ip.h"
|
|
|
|
#define BOOTP_VENDOR 64 /* BOOTP standard vendor field size */
|
|
#define BOOTP_DHCPVEND 312 /* DHCP standard vendor field size */
|
|
#define BOOTP_EXVENDOR 1024 /* .. our max. size (MTU 1500) */
|
|
|
|
/* BOOTstrap Protocol (BOOTP) header */
|
|
typedef struct bootph {
|
|
UINT8 opcode, /* operation code */
|
|
hardware, /* hardware type */
|
|
hardlen, /* length of hardware address */
|
|
gatehops; /* gateways hops */
|
|
UINT32 ident; /* transaction identification */
|
|
UINT16 seconds, /* seconds elapsed since boot began */
|
|
flags; /* flags */
|
|
UINT8 cip[IPLEN], /* client IP address */
|
|
yip[IPLEN], /* your IP address */
|
|
sip[IPLEN], /* server IP address */
|
|
gip[IPLEN]; /* gateway IP address */
|
|
UINT8 caddr[16], /* client hardware address */
|
|
sname[64], /* server name */
|
|
bootfile[128]; /* bootfile name */
|
|
union {
|
|
UINT8 d[BOOTP_EXVENDOR]; /* vendor-specific stuff */
|
|
struct {
|
|
UINT8 magic[4]; /* magic number */
|
|
UINT32 flags; /* flags/opcodes etc */
|
|
UINT8 pad[56]; /* padding chars */
|
|
} v;
|
|
} vendor;
|
|
} BOOTPLAYER;
|
|
|
|
#define VM_RFC1048 0x63538263L /* RFC1048 magic number (in network order) */
|
|
|
|
#define BOOTP_SPORT 67 /* BOOTP server port */
|
|
#define BOOTP_CPORT 68 /* .. client port */
|
|
|
|
#define BOOTP_REQ 1 /* BOOTP request */
|
|
#define BOOTP_REP 2 /* .. reply */
|
|
|
|
/* BOOTP flags field */
|
|
#define BOOTP_BCAST 0x8000 /* BOOTP broadcast flag */
|
|
#define BOOTP_FLAGS BOOTP_BCAST /* .. for FDDI address transl. */
|
|
|
|
|
|
#endif /* __BOOTP_H */
|
|
|
|
/* EOF - $Workfile: bootp.h $ */
|