Nmap Development mailing list archives
Re: Boolean Operators for --script (again)
From: Patrick Donnelly <batrick () batbytes com>
Date: Thu, 9 Apr 2009 09:33:10 -0600
On Thu, Apr 9, 2009 at 1:50 AM, Fyodor <fyodor () insecure org> wrote:
It is probably worth making these case insensitive too. We can still document them using the lower case form if that is preferred, but there is no need to fail just because someone forgot whether to use "NOT" or "not".
Ok I'll get this added in.
A couple examples:Examples are great and I'm glad you included them. But can you also document the syntax? It is a relatively simple grammar, so it doesn't need to be long documentation. But people need to know the operator list, precedence rules, whether parenthetical expressions are allowed, how they interact with comma-separated lists, allowed whitespace rules, etc. It is hard to focus on the high level when you're forced to read the code patch to figure out how the new system works. We'll need such documentation when boolean ops are integrated anyway, so we might as well write at least a draft of the syntax for now.
Here's a rough draft of the Augmented BNF syntax: ==== ; Note string literals in ABNF are case-insensitive ruleset = rule *("," rule) rule = exp exp = "nil" / "false" / "true" / name / exp binop exp / unop exp binop = "and" / "or" unop = "not" name = %x21-%x2b / %x2d-%x3a / %x3c-%x7e ; All visible characteres except ',' and ';' ==== While this describes the syntax, the semantics are: The binary and unary operators follow the same semantics and precedence as in Lua. A `name` can be a case-insensitive Category ("intrusive", "default", etc.), a case-sensitive (is this ok?) filename with optional greedy "*" (asterisk) wildcards to match many files. A filename may also have an optional (ignored) .nse extension. Directories are not considered valid in the above ruleset and are handled separately (we include all script files in a directory). -- -Patrick Donnelly "One of the lessons of history is that nothing is often a good thing to do and always a clever thing to say." -Will Durant _______________________________________________ Sent through the nmap-dev mailing list http://cgi.insecure.org/mailman/listinfo/nmap-dev Archived at http://SecLists.Org
Current thread:
- Re: Boolean Operators for --script (again), (continued)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 07)
- Re: Boolean Operators for --script (again) Brandon Enright (Apr 07)
- Re: Boolean Operators for --script (again) David Fifield (Apr 07)
- Re: Boolean Operators for --script (again) Kris Katterjohn (Apr 07)
- Re: Boolean Operators for --script (again) jah (Apr 08)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 07)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 08)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 08)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 09)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 09)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 11)
- Re: Boolean Operators for --script (again) David Fifield (Apr 24)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 27)
- Re: Boolean Operators for --script (again) David Fifield (Apr 27)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 28)
- Re: Boolean Operators for --script (again) David Fifield (Apr 29)
- Re: Boolean Operators for --script (again) Patrick Donnelly (Apr 29)