diff options
author | Brad Smith <brad@cvs.openbsd.org> | 2014-09-16 16:54:07 +0000 |
---|---|---|
committer | Brad Smith <brad@cvs.openbsd.org> | 2014-09-16 16:54:07 +0000 |
commit | 2b306798f33a46a535e3b0f3ebdd05f3ad86f526 (patch) | |
tree | 89eaf541a39a437880bc8bea6dd6a370166c9242 /usr.sbin/nsd/zlexer.lex | |
parent | b9bd487caa683ae9060dcce84b139082da8e3e4c (diff) |
update to NSD 4.1.0, ok sthen@
Diffstat (limited to 'usr.sbin/nsd/zlexer.lex')
-rw-r--r-- | usr.sbin/nsd/zlexer.lex | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/usr.sbin/nsd/zlexer.lex b/usr.sbin/nsd/zlexer.lex index bcb5661ab80..56ad724e108 100644 --- a/usr.sbin/nsd/zlexer.lex +++ b/usr.sbin/nsd/zlexer.lex @@ -107,7 +107,9 @@ parser_pop_stringbuf(void) SPACE [ \t] LETTER [a-zA-Z] NEWLINE [\n\r] -ZONESTR [^ \t\n\r();.\"\$] +ZONESTR [^ \t\n\r();.\"\$]|\\.|\\\n +CHARSTR [^ \t\n\r();.]|\\.|\\\n +QUOTE \" DOLLAR \$ COMMENT ; DOT \. @@ -281,7 +283,7 @@ ANY [^\"\n\\]|\\. } /* Quoted strings. Strip leading and ending quotes. */ -\" { BEGIN(quotedstring); LEXOUT(("\" ")); } +{QUOTE} { BEGIN(quotedstring); LEXOUT(("\" ")); } <quotedstring><<EOF>> { zc_error("EOF inside quoted string"); BEGIN(INITIAL); @@ -290,14 +292,14 @@ ANY [^\"\n\\]|\\. } <quotedstring>{ANY}* { LEXOUT(("STR ")); yymore(); } <quotedstring>\n { ++parser->line; yymore(); } -<quotedstring>\" { +<quotedstring>{QUOTE} { LEXOUT(("\" ")); BEGIN(INITIAL); yytext[yyleng - 1] = '\0'; return parse_token(STR, yytext, &lexer_state); } -({ZONESTR}|\\.|\\\n)+ { +{ZONESTR}({CHARSTR})* { /* Any allowed word. */ return parse_token(STR, yytext, &lexer_state); } |