Annotation of qemu/slirp/bootp.h, revision 1.1.1.2

1.1       root        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
1.1.1.2 ! root       66: #define RFC2132_MESSAGE                56
1.1       root       67: #define RFC2132_MAX_SIZE       57
                     68: #define RFC2132_RENEWAL_TIME    58
                     69: #define RFC2132_REBIND_TIME     59
                     70: 
                     71: #define DHCPDISCOVER           1
                     72: #define DHCPOFFER              2
                     73: #define DHCPREQUEST            3
                     74: #define DHCPACK                        5
1.1.1.2 ! root       75: #define DHCPNAK                        6
1.1       root       76: 
                     77: #define RFC1533_VENDOR_MAJOR   0
                     78: #define RFC1533_VENDOR_MINOR   0
                     79: 
                     80: #define RFC1533_VENDOR_MAGIC   128
                     81: #define RFC1533_VENDOR_ADDPARM 129
                     82: #define        RFC1533_VENDOR_ETHDEV   130
                     83: #define RFC1533_VENDOR_HOWTO    132
                     84: #define RFC1533_VENDOR_MNUOPTS 160
                     85: #define RFC1533_VENDOR_SELECTION 176
                     86: #define RFC1533_VENDOR_MOTD    184
                     87: #define RFC1533_VENDOR_NUMOFMOTD 8
                     88: #define RFC1533_VENDOR_IMG     192
                     89: #define RFC1533_VENDOR_NUMOFIMG        16
                     90: 
                     91: #define RFC1533_END            255
                     92: #define BOOTP_VENDOR_LEN       64
                     93: #define DHCP_OPT_LEN           312
                     94: 
                     95: struct bootp_t {
                     96:     struct ip ip;
                     97:     struct udphdr udp;
                     98:     uint8_t bp_op;
                     99:     uint8_t bp_htype;
                    100:     uint8_t bp_hlen;
                    101:     uint8_t bp_hops;
                    102:     uint32_t bp_xid;
                    103:     uint16_t bp_secs;
                    104:     uint16_t unused;
                    105:     struct in_addr bp_ciaddr;
                    106:     struct in_addr bp_yiaddr;
                    107:     struct in_addr bp_siaddr;
                    108:     struct in_addr bp_giaddr;
                    109:     uint8_t bp_hwaddr[16];
                    110:     uint8_t bp_sname[64];
                    111:     uint8_t bp_file[128];
                    112:     uint8_t bp_vend[DHCP_OPT_LEN];
                    113: };
                    114: 
1.1.1.2 ! root      115: typedef struct {
        !           116:     uint16_t allocated;
        !           117:     uint8_t macaddr[6];
        !           118: } BOOTPClient;
        !           119: 
        !           120: #define NB_BOOTP_CLIENTS 16
        !           121: 
1.1       root      122: void bootp_input(struct mbuf *m);

unix.superglobalmegacorp.com