Annotation of embedaddon/dhcp/includes/dhctoken.h, revision 1.1

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>