File:  [Qemu by Fabrice Bellard] / qemu / slirp / bootp.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:37:52 2018 UTC (3 years, 3 months ago) by root
Branches: qemu, MAIN
CVS tags: qemu0105, qemu0104, qemu0103, qemu0102, qemu0101, qemu0100, qemu0091, qemu0090, qemu0082, qemu0081, qemu0080, qemu0072, HEAD
qemu 0.7.2

    1: /* bootp/dhcp defines */
    2: 
    3: #define BOOTP_SERVER	67
    4: #define BOOTP_CLIENT	68
    5: 
    6: #define BOOTP_REQUEST	1
    7: #define BOOTP_REPLY	2
    8: 
    9: #define RFC1533_COOKIE		99, 130, 83, 99
   10: #define RFC1533_PAD		0
   11: #define RFC1533_NETMASK		1
   12: #define RFC1533_TIMEOFFSET	2
   13: #define RFC1533_GATEWAY		3
   14: #define RFC1533_TIMESERVER	4
   15: #define RFC1533_IEN116NS	5
   16: #define RFC1533_DNS		6
   17: #define RFC1533_LOGSERVER	7
   18: #define RFC1533_COOKIESERVER	8
   19: #define RFC1533_LPRSERVER	9
   20: #define RFC1533_IMPRESSSERVER	10
   21: #define RFC1533_RESOURCESERVER	11
   22: #define RFC1533_HOSTNAME	12
   23: #define RFC1533_BOOTFILESIZE	13
   24: #define RFC1533_MERITDUMPFILE	14
   25: #define RFC1533_DOMAINNAME	15
   26: #define RFC1533_SWAPSERVER	16
   27: #define RFC1533_ROOTPATH	17
   28: #define RFC1533_EXTENSIONPATH	18
   29: #define RFC1533_IPFORWARDING	19
   30: #define RFC1533_IPSOURCEROUTING	20
   31: #define RFC1533_IPPOLICYFILTER	21
   32: #define RFC1533_IPMAXREASSEMBLY	22
   33: #define RFC1533_IPTTL		23
   34: #define RFC1533_IPMTU		24
   35: #define RFC1533_IPMTUPLATEAU	25
   36: #define RFC1533_INTMTU		26
   37: #define RFC1533_INTLOCALSUBNETS	27
   38: #define RFC1533_INTBROADCAST	28
   39: #define RFC1533_INTICMPDISCOVER	29
   40: #define RFC1533_INTICMPRESPOND	30
   41: #define RFC1533_INTROUTEDISCOVER 31
   42: #define RFC1533_INTROUTESOLICIT	32
   43: #define RFC1533_INTSTATICROUTES	33
   44: #define RFC1533_LLTRAILERENCAP	34
   45: #define RFC1533_LLARPCACHETMO	35
   46: #define RFC1533_LLETHERNETENCAP	36
   47: #define RFC1533_TCPTTL		37
   48: #define RFC1533_TCPKEEPALIVETMO	38
   49: #define RFC1533_TCPKEEPALIVEGB	39
   50: #define RFC1533_NISDOMAIN	40
   51: #define RFC1533_NISSERVER	41
   52: #define RFC1533_NTPSERVER	42
   53: #define RFC1533_VENDOR		43
   54: #define RFC1533_NBNS		44
   55: #define RFC1533_NBDD		45
   56: #define RFC1533_NBNT		46
   57: #define RFC1533_NBSCOPE		47
   58: #define RFC1533_XFS		48
   59: #define RFC1533_XDM		49
   60: 
   61: #define RFC2132_REQ_ADDR	50
   62: #define RFC2132_LEASE_TIME      51
   63: #define RFC2132_MSG_TYPE	53
   64: #define RFC2132_SRV_ID		54
   65: #define RFC2132_PARAM_LIST	55
   66: #define RFC2132_MAX_SIZE	57
   67: #define RFC2132_RENEWAL_TIME    58
   68: #define RFC2132_REBIND_TIME     59
   69: 
   70: #define DHCPDISCOVER		1
   71: #define DHCPOFFER		2
   72: #define DHCPREQUEST		3
   73: #define DHCPACK			5
   74: 
   75: #define RFC1533_VENDOR_MAJOR	0
   76: #define RFC1533_VENDOR_MINOR	0
   77: 
   78: #define RFC1533_VENDOR_MAGIC	128
   79: #define RFC1533_VENDOR_ADDPARM	129
   80: #define	RFC1533_VENDOR_ETHDEV	130
   81: #define RFC1533_VENDOR_HOWTO    132
   82: #define RFC1533_VENDOR_MNUOPTS	160
   83: #define RFC1533_VENDOR_SELECTION 176
   84: #define RFC1533_VENDOR_MOTD	184
   85: #define RFC1533_VENDOR_NUMOFMOTD 8
   86: #define RFC1533_VENDOR_IMG	192
   87: #define RFC1533_VENDOR_NUMOFIMG	16
   88: 
   89: #define RFC1533_END		255
   90: #define BOOTP_VENDOR_LEN	64
   91: #define DHCP_OPT_LEN		312
   92: 
   93: struct bootp_t {
   94:     struct ip ip;
   95:     struct udphdr udp;
   96:     uint8_t bp_op;
   97:     uint8_t bp_htype;
   98:     uint8_t bp_hlen;
   99:     uint8_t bp_hops;
  100:     uint32_t bp_xid;
  101:     uint16_t bp_secs;
  102:     uint16_t unused;
  103:     struct in_addr bp_ciaddr;
  104:     struct in_addr bp_yiaddr;
  105:     struct in_addr bp_siaddr;
  106:     struct in_addr bp_giaddr;
  107:     uint8_t bp_hwaddr[16];
  108:     uint8_t bp_sname[64];
  109:     uint8_t bp_file[128];
  110:     uint8_t bp_vend[DHCP_OPT_LEN];
  111: };
  112: 
  113: void bootp_input(struct mbuf *m);

unix.superglobalmegacorp.com