This commit is contained in:
parent
aa2ff7b2f0
commit
2f3113f55d
11742 changed files with 1223940 additions and 0 deletions
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
open Resolvconf_state
|
||||
open Resolvconf_parser
|
||||
}
|
||||
|
||||
let ipv4 = (['0'-'9']+ '.' ['0'-'9']+ '.' ['0'-'9']+ '.' ['0'-'9']+) as contents
|
||||
let ipv6 = (['0'-'9' 'a'-'f' 'A'-'F' ':']+) as contents
|
||||
|
||||
let zone_id = (['0'-'9' 'a'-'z' 'A'-'Z' '.' ]+) as contents
|
||||
|
||||
(* inspired by https://github.com/tailhook/resolv-conf/blob/master/src/grammar.rs *)
|
||||
|
||||
rule lex = parse
|
||||
| "nameserver" { SNAMESERVER }
|
||||
| "options" ([^'\n']*) '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| "search" ([^'\n']*) '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| "domain" ([^'\n']*) '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| "sortlist" ([^'\n']*) '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| "lookup" ([^'\n']*) '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| "family" ([^'\n']*) '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| [' ' '\t']+ { SPACE }
|
||||
| ipv4 { IPV4 contents }
|
||||
| ipv6 { IPV6 contents }
|
||||
| '.' { DOT }
|
||||
| ':' { COLON }
|
||||
| '%' { PERCENT }
|
||||
| [' ' '\t']* ('#' [^'\n']*)? '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| [' ' '\t']* (';' [^'\n']*)? '\n' { state.lineno <- state.lineno + 1 ; EOL }
|
||||
| zone_id { ZONE_ID contents }
|
||||
| eof { EOF }
|
||||
Loading…
Add table
Add a link
Reference in a new issue