Remove terminating semicolons from SYSCTL_ADD_* macros. This will allow to
[dragonfly/port-amd64.git] / contrib / dhcp-3.0 / includes / dhctoken.h
blob858e3c989b264ba16bc7c9d881cc55f081cae1fd
1 /* dhctoken.h
3 Tokens for config file lexer and parser. */
5 /*
6 * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
7 * Copyright (c) 1996-2003 by Internet Software Consortium
9 * Permission to use, copy, modify, and distribute this software for any
10 * purpose with or without fee is hereby granted, provided that the above
11 * copyright notice and this permission notice appear in all copies.
13 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
14 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
15 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
16 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
17 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
18 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
19 * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
21 * Internet Systems Consortium, Inc.
22 * 950 Charter Street
23 * Redwood City, CA 94063
24 * <info@isc.org>
25 * http://www.isc.org/
27 * This software has been written for Internet Systems Consortium
28 * by Ted Lemon in cooperation with Vixie Enterprises and Nominum, Inc.
29 * To learn more about Internet Systems Consortium, see
30 * ``http://www.isc.org/''. To learn more about Vixie Enterprises,
31 * see ``http://www.vix.com''. To learn more about Nominum, Inc., see
32 * ``http://www.nominum.com''.
35 enum dhcp_token {
36 SEMI = ';',
37 DOT = '.',
38 COLON = ':',
39 COMMA = ',',
40 SLASH = '/',
41 LBRACE = '{',
42 RBRACE = '}',
43 LPAREN = '(',
44 RPAREN = ')',
45 EQUAL = '=',
46 BANG = '!',
47 PERCENT = '%',
48 PLUS = '+',
49 MINUS = '-',
50 ASTERISK = '*',
51 AMPERSAND = '&',
52 PIPE = '|',
53 CARET = '^',
55 HOST = 256,
56 FIRST_TOKEN = HOST,
57 HARDWARE = 257,
58 FILENAME = 258,
59 FIXED_ADDR = 259,
60 OPTION = 260,
61 ETHERNET = 261,
62 STRING = 262,
63 NUMBER = 263,
64 NUMBER_OR_NAME = 264,
65 NAME = 265,
66 TIMESTAMP = 266,
67 STARTS = 267,
68 ENDS = 268,
69 UID = 269,
70 CLASS = 270,
71 LEASE = 271,
72 RANGE = 272,
73 PACKET = 273,
74 CIADDR = 274,
75 YIADDR = 275,
76 SIADDR = 276,
77 GIADDR = 277,
78 SUBNET = 278,
79 NETMASK = 279,
80 DEFAULT_LEASE_TIME = 280,
81 MAX_LEASE_TIME = 281,
82 VENDOR_CLASS = 282,
83 USER_CLASS = 283,
84 SHARED_NETWORK = 284,
85 SERVER_NAME = 285,
86 DYNAMIC_BOOTP = 286,
87 SERVER_IDENTIFIER = 287,
88 DYNAMIC_BOOTP_LEASE_CUTOFF = 288,
89 DYNAMIC_BOOTP_LEASE_LENGTH = 289,
90 BOOT_UNKNOWN_CLIENTS = 290,
91 NEXT_SERVER = 291,
92 TOKEN_RING = 292,
93 GROUP = 293,
94 ONE_LEASE_PER_CLIENT = 294,
95 GET_LEASE_HOSTNAMES = 295,
96 USE_HOST_DECL_NAMES = 296,
97 SEND = 297,
98 CLIENT_IDENTIFIER = 298,
99 REQUEST = 299,
100 REQUIRE = 300,
101 TIMEOUT = 301,
102 RETRY = 302,
103 SELECT_TIMEOUT = 303,
104 SCRIPT = 304,
105 INTERFACE = 305,
106 RENEW = 306,
107 REBIND = 307,
108 EXPIRE = 308,
109 UNKNOWN_CLIENTS = 309,
110 ALLOW = 310,
111 DENY = 312,
112 BOOTING = 313,
113 DEFAULT = 314,
114 MEDIA = 315,
115 MEDIUM = 316,
116 ALIAS = 317,
117 REBOOT = 318,
118 TOKEN_ABANDONED = 319,
119 BACKOFF_CUTOFF = 320,
120 INITIAL_INTERVAL = 321,
121 NAMESERVER = 322,
122 DOMAIN = 323,
123 SEARCH = 324,
124 SUPERSEDE = 325,
125 APPEND = 326,
126 PREPEND = 327,
127 HOSTNAME = 328,
128 CLIENT_HOSTNAME = 329,
129 REJECT = 330,
130 USE_LEASE_ADDR_FOR_DEFAULT_ROUTE = 331,
131 MIN_LEASE_TIME = 332,
132 MIN_SECS = 333,
133 AND = 334,
134 OR = 335,
135 SUBSTRING = 337,
136 SUFFIX = 338,
137 CHECK = 339,
138 EXTRACT_INT = 340,
139 IF = 341,
140 TOKEN_ADD = 342,
141 BREAK = 343,
142 ELSE = 344,
143 ELSIF = 345,
144 SUBCLASS = 346,
145 MATCH = 347,
146 SPAWN = 348,
147 WITH = 349,
148 EXISTS = 350,
149 POOL = 351,
150 UNKNOWN = 352,
151 CLIENTS = 353,
152 KNOWN = 354,
153 AUTHENTICATED = 355,
154 UNAUTHENTICATED = 356,
155 ALL = 357,
156 DYNAMIC = 358,
157 MEMBERS = 359,
158 OF = 360,
159 PSEUDO = 361,
160 LIMIT = 362,
161 BILLING = 363,
162 PEER = 364,
163 FAILOVER = 365,
164 MY = 366,
165 PARTNER = 367,
166 PRIMARY = 368,
167 SECONDARY = 369,
168 IDENTIFIER = 370,
169 PORT = 371,
170 MAX_TRANSMIT_IDLE = 372,
171 MAX_RESPONSE_DELAY = 373,
172 PARTNER_DOWN = 374,
173 NORMAL = 375,
174 COMMUNICATIONS_INTERRUPTED = 376,
175 POTENTIAL_CONFLICT = 377,
176 RECOVER = 378,
177 FDDI = 379,
178 AUTHORITATIVE = 380,
179 TOKEN_NOT = 381,
180 AUTHENTICATION = 383,
181 IGNORE = 384,
182 ACCEPT = 385,
183 PREFER = 386,
184 DONT = 387,
185 CODE = 388,
186 ARRAY = 389,
187 BOOLEAN = 390,
188 INTEGER = 391,
189 SIGNED = 392,
190 UNSIGNED = 393,
191 IP_ADDRESS = 394,
192 TEXT = 395,
193 STRING_TOKEN = 396,
194 SPACE = 397,
195 CONCAT = 398,
196 ENCODE_INT = 399,
197 REVERSE = 402,
198 LEASED_ADDRESS = 403,
199 BINARY_TO_ASCII = 404,
200 PICK = 405,
201 CONFIG_OPTION = 406,
202 HOST_DECL_NAME = 407,
203 ON = 408,
204 EXPIRY = 409,
205 RELEASE = 410,
206 COMMIT = 411,
207 DNS_UPDATE = 412,
208 LEASE_TIME = 413,
209 STATIC = 414,
210 NEVER = 415,
211 INFINITE = 416,
212 TOKEN_DELETED = 417,
213 UPDATED_DNS_RR = 418,
214 DNS_DELETE = 419,
215 DUPLICATES = 420,
216 DECLINES = 421,
217 TSTP = 422,
218 TSFP = 423,
219 OWNER = 424,
220 IS = 425,
221 HBA = 426,
222 MAX_UNACKED_UPDATES = 427,
223 MCLT = 428,
224 SPLIT = 429,
225 AT = 430,
226 NO = 431,
227 TOKEN_DELETE = 432,
228 NS_UPDATE = 433,
229 UPDATE = 434,
230 SWITCH = 435,
231 CASE = 436,
232 NS_FORMERR = 437,
233 NS_NOERROR = 438,
234 NS_NOTAUTH = 439,
235 NS_NOTIMP = 440,
236 NS_NOTZONE = 441,
237 NS_NXDOMAIN = 442,
238 NS_NXRRSET = 443,
239 NS_REFUSED = 444,
240 NS_SERVFAIL = 445,
241 NS_YXDOMAIN = 446,
242 NS_YXRRSET = 447,
243 TOKEN_NULL = 448,
244 TOKEN_SET = 449,
245 DEFINED = 450,
246 UNSET = 451,
247 EVAL = 452,
248 LET = 453,
249 FUNCTION = 454,
250 DEFINE = 455,
251 ZONE = 456,
252 KEY = 457,
253 SECRET = 458,
254 ALGORITHM = 459,
255 LOAD = 460,
256 BALANCE = 461,
257 TOKEN_MAX = 462,
258 SECONDS = 463,
259 ADDRESS = 464,
260 RESOLUTION_INTERRUPTED = 465,
261 STATE = 466,
262 UNKNOWN_STATE = 567,
263 CLTT = 568,
264 INCLUDE = 569,
265 BINDING = 570,
266 TOKEN_FREE = 571,
267 TOKEN_ACTIVE = 572,
268 TOKEN_EXPIRED = 573,
269 TOKEN_RELEASED = 574,
270 TOKEN_RESET = 575,
271 TOKEN_BACKUP = 576,
272 TOKEN_RESERVED = 577,
273 TOKEN_BOOTP = 578,
274 TOKEN_NEXT = 579,
275 OMAPI = 580,
276 LOG = 581,
277 FATAL = 582,
278 ERROR = 583,
279 TOKEN_DEBUG = 584,
280 INFO = 585,
281 RETURN = 586,
282 PAUSED = 587,
283 RECOVER_DONE = 588,
284 SHUTDOWN = 589,
285 STARTUP = 590,
286 ENCAPSULATE = 591,
287 VENDOR = 592,
288 CLIENT_STATE = 593,
289 INIT_REBOOT = 594,
290 TOKEN_INIT = 595,
291 SELECT = 596,
292 BOUND = 597,
293 RENEWING = 598,
294 REBINDING = 599,
295 RECONTACT_INTERVAL = 600,
296 CLIENT_UPDATES = 601,
297 TOKEN_NEW = 601,
298 TRANSMISSION = 602,
299 TOKEN_CLOSE = 603,
300 TOKEN_CREATE = 604,
301 TOKEN_OPEN = 605,
302 TOKEN_HELP = 606,
303 END_OF_FILE = 607,
304 RECOVER_WAIT = 608,
305 SERVER = 609,
306 CONNECT = 610,
307 REMOVE = 611,
308 REFRESH = 612,
309 DOMAIN_NAME = 613,
310 DO_FORWARD_UPDATE = 614,
311 KNOWN_CLIENTS = 615
314 #define is_identifier(x) ((x) >= FIRST_TOKEN && \
315 (x) != STRING && \
316 (x) != NUMBER && \
317 (x) != END_OF_FILE)