diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 2007-08-15 14:22:40 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 2007-08-15 14:22:40 +0000 |
commit | cde03a4a0a3c7469d5d22de04feafcb05d2c595a (patch) | |
tree | 54c1bdae9a87f253701afc1f8a09ad18a763e81f /usr.bin/sudo/parse.lex | |
parent | ac1b0750f2de5bcab580a9e40849e3b7599ef5de (diff) |
Update to sudo 1.6.9p4. Basically IPv6 support and improved man pages.
Diffstat (limited to 'usr.bin/sudo/parse.lex')
-rw-r--r-- | usr.bin/sudo/parse.lex | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/usr.bin/sudo/parse.lex b/usr.bin/sudo/parse.lex index a77c03800fb..1b47711c837 100644 --- a/usr.bin/sudo/parse.lex +++ b/usr.bin/sudo/parse.lex @@ -55,7 +55,7 @@ #include <sudo.tab.h> #ifndef lint -__unused static const char rcsid[] = "$Sudo: parse.lex,v 1.132.2.3 2007/06/23 21:36:48 millert Exp $"; +__unused static const char rcsid[] = "$Sudo: parse.lex,v 1.132.2.4 2007/08/13 16:30:02 millert Exp $"; #endif /* lint */ #undef yywrap /* guard against a yywrap macro */ @@ -83,8 +83,11 @@ extern void yyerror __P((char *)); #endif %} +HEXDIGIT [0-9A-Fa-f]{1,4} OCTET (1?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]) DOTTEDQUAD {OCTET}(\.{OCTET}){3} +IPV6ADDR \:\:|({HEXDIGIT}\:){7}{HEXDIGIT}|({HEXDIGIT}\:){5}{HEXDIGIT}\:{DOTTEDQUAD}|({HEXDIGIT}\:){1,7}\:|({HEXDIGIT}\:){1,6}(\:{HEXDIGIT}){1}|({HEXDIGIT}\:){1,5}(\:{HEXDIGIT}){2}|({HEXDIGIT}\:){1,2}\:{DOTTEDQUAD}|({HEXDIGIT}\:){1,4}(\:{HEXDIGIT}){3}|({HEXDIGIT}\:){1,4}(\:{HEXDIGIT}){1}\:{DOTTEDQUAD}|({HEXDIGIT}\:){1,3}(\:{HEXDIGIT}){4}|({HEXDIGIT}\:){1,3}(\:{HEXDIGIT}){2}\:{DOTTEDQUAD}|({HEXDIGIT}\:){1,2}(\:{HEXDIGIT}){5}|({HEXDIGIT}\:){1,2}(\:{HEXDIGIT}){3}\:{DOTTEDQUAD}|({HEXDIGIT}\:){1}(\:{HEXDIGIT}){6}|({HEXDIGIT}\:){1}(\:{HEXDIGIT}){4}\:{DOTTEDQUAD}|\:(\:{HEXDIGIT}){1,7}|\:(\:{HEXDIGIT}){1,5}\:{DOTTEDQUAD} + HOSTNAME [[:alnum:]_-]+ WORD ([^#>@!=:,\(\) \t\n\\]|\\[^\n])+ ENVAR ([^#!=, \t\n\\]|\\[^\n])([^#=, \t\n\\]|\\[^\n])* @@ -265,6 +268,18 @@ NOSETENV[[:blank:]]*: { return(NTWKADDR); } +{IPV6ADDR}(\/{IPV6ADDR})? { + fill(yytext, yyleng); + LEXTRACE("NTWKADDR "); + return(NTWKADDR); + } + +{IPV6ADDR}\/([0-9]|[1-9][0-9]|1[01][0-9]|12[0-8]) { + fill(yytext, yyleng); + LEXTRACE("NTWKADDR "); + return(NTWKADDR); + } + <INITIAL>\( { BEGIN GOTRUNAS; LEXTRACE("RUNAS "); |