VirtualBox

source: vbox/trunk/src/VBox/Devices/Network/slirp/bootp.h@ 1050

Last change on this file since 1050 was 1033, checked in by vboxsync, 18 years ago

Big change to make slirp fully instantiatable (replace all global
variables with local ones, passing a reference to the state/config
structure to all places which are interested). You can now have as many
cards in the guest configured for NAT networking as you want.

  • Property svn:eol-style set to native
File size: 3.0 KB
Line 
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#ifdef VBOX
75#define DHCPRELEASE 7
76#endif /* VBOX */
77
78#define RFC1533_VENDOR_MAJOR 0
79#define RFC1533_VENDOR_MINOR 0
80
81#define RFC1533_VENDOR_MAGIC 128
82#define RFC1533_VENDOR_ADDPARM 129
83#define RFC1533_VENDOR_ETHDEV 130
84#define RFC1533_VENDOR_HOWTO 132
85#define RFC1533_VENDOR_MNUOPTS 160
86#define RFC1533_VENDOR_SELECTION 176
87#define RFC1533_VENDOR_MOTD 184
88#define RFC1533_VENDOR_NUMOFMOTD 8
89#define RFC1533_VENDOR_IMG 192
90#define RFC1533_VENDOR_NUMOFIMG 16
91
92#define RFC1533_END 255
93#define BOOTP_VENDOR_LEN 64
94#define DHCP_OPT_LEN 312
95
96struct bootp_t {
97 struct ip ip;
98 struct udphdr udp;
99 uint8_t bp_op;
100 uint8_t bp_htype;
101 uint8_t bp_hlen;
102 uint8_t bp_hops;
103 uint32_t bp_xid;
104 uint16_t bp_secs;
105 uint16_t unused;
106 struct in_addr bp_ciaddr;
107 struct in_addr bp_yiaddr;
108 struct in_addr bp_siaddr;
109 struct in_addr bp_giaddr;
110 uint8_t bp_hwaddr[16];
111 uint8_t bp_sname[64];
112 uint8_t bp_file[128];
113 uint8_t bp_vend[DHCP_OPT_LEN];
114};
115
116#ifdef VBOX
117void bootp_input(PNATState, struct mbuf *m);
118#else /* !VBOX */
119void bootp_input(struct mbuf *m);
120#endif /* !VBOX */
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette