18735Ssam %{ 221132Sdist /* 321132Sdist * Copyright (c) 1983 Regents of the University of California. 421132Sdist * All rights reserved. The Berkeley software License Agreement 521132Sdist * specifies the terms and conditions for redistribution. 621132Sdist */ 721132Sdist 88735Ssam #ifndef lint 9*27090Skarels static char sccsid[] = "@(#)scan.l 5.3 (Berkeley) 04/16/86"; 1021132Sdist #endif not lint 118735Ssam 128735Ssam #include "y.tab.h" 138735Ssam #include "htable.h" 148735Ssam %} 158735Ssam 168735Ssam BLANK [ \t] 178735Ssam DIGIT [0-9] 18*27090Skarels ALPHA [A-Za-z] 19*27090Skarels ANUM [0-9A-Za-z] 20*27090Skarels NAMECHR [0-9A-Za-z./-] 218735Ssam 228735Ssam %% 238735Ssam "NET" { 248735Ssam yylval.number = KW_NET; 258735Ssam return (KEYWORD); 268735Ssam } 278735Ssam 288735Ssam "GATEWAY" { 298735Ssam yylval.number = KW_GATEWAY; 308735Ssam return (KEYWORD); 318735Ssam } 328735Ssam 338735Ssam "HOST" { 348735Ssam yylval.number = KW_HOST; 358735Ssam return (KEYWORD); 368735Ssam } 378735Ssam 388735Ssam {ALPHA}{NAMECHR}*{ANUM} { 398735Ssam yylval.namelist = newname(yytext); 408735Ssam return (NAME); 418735Ssam } 428735Ssam 4318111Sralph {ALPHA} { 4418111Sralph yylval.namelist = newname(yytext); 4518111Sralph return (NAME); 4618111Sralph } 478735Ssam 488735Ssam {DIGIT}+ { 498735Ssam yylval.number = atoi(yytext); 508735Ssam return (NUMBER); 518735Ssam } 528735Ssam 538735Ssam "." return ('.'); 548735Ssam ":" return (':'); 558735Ssam "," return (','); 568735Ssam "/" return ('/'); 578735Ssam ";".* ; 588735Ssam "\n"{BLANK}+ ; 598735Ssam {BLANK}+ ; 608735Ssam "\n" return (END); 618735Ssam . fprintf(stderr, "Illegal char: '%s'\n", yytext); 628735Ssam 638735Ssam %% 648735Ssam 658735Ssam yywrap() 668735Ssam { 678735Ssam return (1); 688735Ssam } 69