2
0
mirror of https://gitlab.isc.org/isc-projects/dhcp synced 2025-08-22 09:57:20 +00:00
isc-dhcp/includes/dhctoken.h

246 lines
4.4 KiB
C
Raw Normal View History

1995-11-29 07:40:04 +00:00
/* dhctoken.h
Tokens for config file lexer and parser. */
/*
1999-03-16 05:50:46 +00:00
* Copyright (c) 1996-1999 Internet Software Consortium.
* Use is subject to license terms which appear in the file named
* ISC-LICENSE that should have accompanied this file when you
* received it. If a file named ISC-LICENSE did not accompany this
* file, or you are not sure the one you have is correct, you may
* obtain an applicable copy of the license at:
1995-11-29 07:40:04 +00:00
*
1999-03-16 05:50:46 +00:00
* http://www.isc.org/isc-license-1.0.html.
1995-11-29 07:40:04 +00:00
*
1999-03-16 05:50:46 +00:00
* This file is part of the ISC DHCP distribution. The documentation
* associated with this file is listed in the file DOCUMENTATION,
* included in the top-level directory of this release.
1995-11-29 07:40:04 +00:00
*
1999-03-16 05:50:46 +00:00
* Support and other services are available for ISC products - see
* http://www.isc.org for more information.
1995-11-29 07:40:04 +00:00
*/
enum dhcp_token {
SEMI = ';',
DOT = '.',
COLON = ':',
COMMA = ',',
SLASH = '/',
LBRACE = '{',
RBRACE = '}',
LPAREN = '(',
RPAREN = ')',
EQUAL = '=',
1999-11-03 16:10:46 +00:00
BANG = '!',
2000-02-05 17:44:13 +00:00
PERCENT = '%',
PLUS = '+',
MINUS = '-',
ASTERISK = '*',
1995-11-29 07:40:04 +00:00
HOST = 256,
FIRST_TOKEN = HOST,
HARDWARE = 257,
FILENAME = 258,
FIXED_ADDR = 259,
OPTION = 260,
ETHERNET = 261,
STRING = 262,
NUMBER = 263,
NUMBER_OR_NAME = 264,
NAME = 265,
TIMESTAMP = 266,
STARTS = 267,
ENDS = 268,
UID = 269,
CLASS = 270,
LEASE = 271,
RANGE = 272,
PACKET = 273,
CIADDR = 274,
YIADDR = 275,
SIADDR = 276,
GIADDR = 277,
SUBNET = 278,
NETMASK = 279,
DEFAULT_LEASE_TIME = 280,
MAX_LEASE_TIME = 281,
VENDOR_CLASS = 282,
USER_CLASS = 283,
SHARED_NETWORK = 284,
SERVER_NAME = 285,
DYNAMIC_BOOTP = 286,
SERVER_IDENTIFIER = 287,
DYNAMIC_BOOTP_LEASE_CUTOFF = 288,
DYNAMIC_BOOTP_LEASE_LENGTH = 289,
BOOT_UNKNOWN_CLIENTS = 290,
NEXT_SERVER = 291,
TOKEN_RING = 292,
GROUP = 293,
ONE_LEASE_PER_CLIENT = 294,
GET_LEASE_HOSTNAMES = 295,
USE_HOST_DECL_NAMES = 296,
SEND = 297,
CLIENT_IDENTIFIER = 298,
REQUEST = 299,
REQUIRE = 300,
TIMEOUT = 301,
RETRY = 302,
SELECT_TIMEOUT = 303,
SCRIPT = 304,
INTERFACE = 305,
RENEW = 306,
REBIND = 307,
EXPIRE = 308,
UNKNOWN_CLIENTS = 309,
ALLOW = 310,
BOOTP = 311,
DENY = 312,
BOOTING = 313,
DEFAULT = 314,
MEDIA = 315,
MEDIUM = 316,
ALIAS = 317,
REBOOT = 318,
ABANDONED = 319,
BACKOFF_CUTOFF = 320,
INITIAL_INTERVAL = 321,
NAMESERVER = 322,
DOMAIN = 323,
SEARCH = 324,
SUPERSEDE = 325,
APPEND = 326,
PREPEND = 327,
HOSTNAME = 328,
CLIENT_HOSTNAME = 329,
REJECT = 330,
USE_LEASE_ADDR_FOR_DEFAULT_ROUTE = 331,
MIN_LEASE_TIME = 332,
MIN_SECS = 333,
AND = 334,
OR = 335,
SUBSTRING = 337,
SUFFIX = 338,
CHECK = 339,
EXTRACT_INT = 340,
IF = 341,
TOKEN_ADD = 342,
BREAK = 343,
ELSE = 344,
ELSIF = 345,
SUBCLASS = 346,
MATCH = 347,
SPAWN = 348,
WITH = 349,
EXISTS = 350,
POOL = 351,
UNKNOWN = 352,
CLIENTS = 353,
KNOWN = 354,
AUTHENTICATED = 355,
UNAUTHENTICATED = 356,
ALL = 357,
DYNAMIC = 358,
MEMBERS = 359,
OF = 360,
PSEUDO = 361,
1998-11-11 07:54:48 +00:00
LIMIT = 362,
BILLING = 363,
PEER = 364,
FAILOVER = 365,
MY = 366,
PARTNER = 367,
PRIMARY = 368,
SECONDARY = 369,
IDENTIFIER = 370,
PORT = 371,
MAX_TRANSMIT_IDLE = 372,
MAX_RESPONSE_DELAY = 373,
PARTNER_DOWN = 374,
NORMAL = 375,
COMMUNICATIONS_INTERRUPTED = 376,
POTENTIAL_CONFLICT = 377,
RECOVER = 378,
FDDI = 379,
AUTHORITATIVE = 380,
TOKEN_NOT = 381,
AUTH_KEY = 382,
AUTHENTICATION = 383,
IGNORE = 384,
ACCEPT = 385,
PREFER = 386,
DONT = 387,
CODE = 388,
ARRAY = 389,
BOOLEAN = 390,
INTEGER = 391,
SIGNED = 392,
UNSIGNED = 393,
IP_ADDRESS = 394,
TEXT = 395,
STRING_TOKEN = 396,
1999-04-05 14:58:23 +00:00
SPACE = 397,
1999-05-06 20:26:46 +00:00
CONCAT = 398,
1999-05-27 14:54:02 +00:00
ENCODE_INT = 399,
REVERSE = 402,
LEASED_ADDRESS = 403,
BINARY_TO_ASCII = 404,
PICK = 405,
CONFIG_OPTION = 406,
HOST_DECL_NAME = 407,
ON = 408,
EXPIRY = 409,
RELEASE = 410,
COMMIT = 411,
DNS_UPDATE = 412,
LEASE_TIME = 413,
STATIC = 414,
NEVER = 415,
INFINITE = 416,
1999-09-09 23:25:29 +00:00
DELETED = 417,
UPDATED_DNS_RR = 418,
1999-10-20 20:55:48 +00:00
DNS_DELETE = 419,
1999-10-21 02:36:14 +00:00
DUPLICATES = 420,
2000-01-05 18:07:37 +00:00
DECLINES = 421,
TSTP = 422,
TSFP = 423,
OWNER = 424,
IS = 425,
HBA = 426,
MAX_UNACKED_UPDATES = 427,
MCLT = 428,
SPLIT = 429,
AT = 430,
NO = 431,
TOKEN_DELETE,
NS_UPDATE,
UPDATE,
SWITCH,
CASE,
NS_FORMERR,
NS_NOERROR,
NS_NOTAUTH,
NS_NOTIMP,
NS_NOTZONE,
NS_NXDOMAIN,
NS_NXRRSET,
NS_REFUSED,
NS_SERVFAIL,
NS_YXDOMAIN,
NS_YXRRSET,
TOKEN_NULL,
TOKEN_SET,
DEFINED,
UNSET,
EVAL,
LET,
FUNCTION,
DEFINE,
2000-03-06 23:25:11 +00:00
TSIG_KEY,
ZONE
};
1995-11-29 07:40:04 +00:00
#define is_identifier(x) ((x) >= FIRST_TOKEN && \
(x) != STRING && \
1996-05-22 08:07:11 +00:00
(x) != NUMBER && \
(x) != EOF)