1/* $OpenBSD: dhctoken.h,v 1.2 2004/02/04 12:16:56 henning Exp $ */ 2 3/* Tokens for config file lexer and parser. */ 4 5/*- 6 * SPDX-License-Identifier: BSD-3-Clause 7 * 8 * Copyright (c) 1995, 1996, 1997, 1998, 1999 9 * The Internet Software Consortium. All rights reserved. 10 * 11 * Redistribution and use in source and binary forms, with or without 12 * modification, are permitted provided that the following conditions 13 * are met: 14 * 15 * 1. Redistributions of source code must retain the above copyright 16 * notice, this list of conditions and the following disclaimer. 17 * 2. Redistributions in binary form must reproduce the above copyright 18 * notice, this list of conditions and the following disclaimer in the 19 * documentation and/or other materials provided with the distribution. 20 * 3. Neither the name of The Internet Software Consortium nor the names 21 * of its contributors may be used to endorse or promote products derived 22 * from this software without specific prior written permission. 23 * 24 * THIS SOFTWARE IS PROVIDED BY THE INTERNET SOFTWARE CONSORTIUM AND 25 * CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, 26 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 27 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 28 * DISCLAIMED. IN NO EVENT SHALL THE INTERNET SOFTWARE CONSORTIUM OR 29 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 30 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 31 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 32 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 33 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 34 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 35 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * This software has been written for the Internet Software Consortium 39 * by Ted Lemon <mellon@fugue.com> in cooperation with Vixie 40 * Enterprises. To learn more about the Internet Software Consortium, 41 * see ``http://www.vix.com/isc''. To learn more about Vixie 42 * Enterprises, see ``http://www.vix.com''. 43 */ 44 45#define SEMI ';' 46#define DOT '.' 47#define COLON ':' 48#define COMMA ',' 49#define SLASH '/' 50#define LBRACE '{' 51#define RBRACE '}' 52 53#define FIRST_TOKEN HOST 54#define HOST 256 55#define HARDWARE 257 56#define FILENAME 258 57#define FIXED_ADDR 259 58#define OPTION 260 59#define ETHERNET 261 60#define STRING 262 61#define NUMBER 263 62#define NUMBER_OR_NAME 264 63#define NAME 265 64#define TIMESTAMP 266 65#define STARTS 267 66#define ENDS 268 67#define UID 269 68#define CLASS 270 69#define LEASE 271 70#define RANGE 272 71#define PACKET 273 72#define CIADDR 274 73#define YIADDR 275 74#define SIADDR 276 75#define GIADDR 277 76#define SUBNET 278 77#define NETMASK 279 78#define DEFAULT_LEASE_TIME 280 79#define MAX_LEASE_TIME 281 80#define VENDOR_CLASS 282 81#define USER_CLASS 283 82#define SHARED_NETWORK 284 83#define SERVER_NAME 285 84#define DYNAMIC_BOOTP 286 85#define SERVER_IDENTIFIER 287 86#define DYNAMIC_BOOTP_LEASE_CUTOFF 288 87#define DYNAMIC_BOOTP_LEASE_LENGTH 289 88#define BOOT_UNKNOWN_CLIENTS 290 89#define NEXT_SERVER 291 90#define TOKEN_RING 292 91#define GROUP 293 92#define ONE_LEASE_PER_CLIENT 294 93#define GET_LEASE_HOSTNAMES 295 94#define USE_HOST_DECL_NAMES 296 95#define SEND 297 96#define CLIENT_IDENTIFIER 298 97#define REQUEST 299 98#define REQUIRE 300 99#define TIMEOUT 301 100#define RETRY 302 101#define SELECT_TIMEOUT 303 102#define SCRIPT 304 103#define INTERFACE 305 104#define RENEW 306 105#define REBIND 307 106#define EXPIRE 308 107#define UNKNOWN_CLIENTS 309 108#define ALLOW 310 109#define BOOTP 311 110#define DENY 312 111#define BOOTING 313 112#define DEFAULT 314 113#define MEDIA 315 114#define MEDIUM 316 115#define ALIAS 317 116#define REBOOT 318 117#define ABANDONED 319 118#define BACKOFF_CUTOFF 320 119#define INITIAL_INTERVAL 321 120#define NAMESERVER 322 121#define DOMAIN 323 122#define SEARCH 324 123#define SUPERSEDE 325 124#define APPEND 326 125#define PREPEND 327 126#define HOSTNAME 328 127#define CLIENT_HOSTNAME 329 128#define REJECT 330 129#define FDDI 331 130#define USE_LEASE_ADDR_FOR_DEFAULT_ROUTE 332 131#define AUTHORITATIVE 333 132#define TOKEN_NOT 334 133#define ALWAYS_REPLY_RFC1048 335 134#define VLAN_PCP 336 135#define IGNORE 337 136 137#define is_identifier(x) ((x) >= FIRST_TOKEN && \ 138 (x) != STRING && \ 139 (x) != NUMBER && \ 140 (x) != EOF) 141