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 * $FreeBSD$ 45 */ 46 47 #define SEMI ';' 48 #define DOT '.' 49 #define COLON ':' 50 #define COMMA ',' 51 #define SLASH '/' 52 #define LBRACE '{' 53 #define RBRACE '}' 54 55 #define FIRST_TOKEN HOST 56 #define HOST 256 57 #define HARDWARE 257 58 #define FILENAME 258 59 #define FIXED_ADDR 259 60 #define OPTION 260 61 #define ETHERNET 261 62 #define STRING 262 63 #define NUMBER 263 64 #define NUMBER_OR_NAME 264 65 #define NAME 265 66 #define TIMESTAMP 266 67 #define STARTS 267 68 #define ENDS 268 69 #define UID 269 70 #define CLASS 270 71 #define LEASE 271 72 #define RANGE 272 73 #define PACKET 273 74 #define CIADDR 274 75 #define YIADDR 275 76 #define SIADDR 276 77 #define GIADDR 277 78 #define SUBNET 278 79 #define NETMASK 279 80 #define DEFAULT_LEASE_TIME 280 81 #define MAX_LEASE_TIME 281 82 #define VENDOR_CLASS 282 83 #define USER_CLASS 283 84 #define SHARED_NETWORK 284 85 #define SERVER_NAME 285 86 #define DYNAMIC_BOOTP 286 87 #define SERVER_IDENTIFIER 287 88 #define DYNAMIC_BOOTP_LEASE_CUTOFF 288 89 #define DYNAMIC_BOOTP_LEASE_LENGTH 289 90 #define BOOT_UNKNOWN_CLIENTS 290 91 #define NEXT_SERVER 291 92 #define TOKEN_RING 292 93 #define GROUP 293 94 #define ONE_LEASE_PER_CLIENT 294 95 #define GET_LEASE_HOSTNAMES 295 96 #define USE_HOST_DECL_NAMES 296 97 #define SEND 297 98 #define CLIENT_IDENTIFIER 298 99 #define REQUEST 299 100 #define REQUIRE 300 101 #define TIMEOUT 301 102 #define RETRY 302 103 #define SELECT_TIMEOUT 303 104 #define SCRIPT 304 105 #define INTERFACE 305 106 #define RENEW 306 107 #define REBIND 307 108 #define EXPIRE 308 109 #define UNKNOWN_CLIENTS 309 110 #define ALLOW 310 111 #define BOOTP 311 112 #define DENY 312 113 #define BOOTING 313 114 #define DEFAULT 314 115 #define MEDIA 315 116 #define MEDIUM 316 117 #define ALIAS 317 118 #define REBOOT 318 119 #define ABANDONED 319 120 #define BACKOFF_CUTOFF 320 121 #define INITIAL_INTERVAL 321 122 #define NAMESERVER 322 123 #define DOMAIN 323 124 #define SEARCH 324 125 #define SUPERSEDE 325 126 #define APPEND 326 127 #define PREPEND 327 128 #define HOSTNAME 328 129 #define CLIENT_HOSTNAME 329 130 #define REJECT 330 131 #define FDDI 331 132 #define USE_LEASE_ADDR_FOR_DEFAULT_ROUTE 332 133 #define AUTHORITATIVE 333 134 #define TOKEN_NOT 334 135 #define ALWAYS_REPLY_RFC1048 335 136 137 #define is_identifier(x) ((x) >= FIRST_TOKEN && \ 138 (x) != STRING && \ 139 (x) != NUMBER && \ 140 (x) != EOF) 141