--- TODO 2002/10/05 15:49:23 1.3
+++ TODO 2002/11/10 12:12:23 1.4
@@ -1,5 +1,5 @@
- _ ___ ____ ____ ____ __
- |_|_ _ / _ \/ ___/ ___|| _ \ ___ / _| __ _
+ _ ___ ____ ____ ____ __
+ |_|_ _ / _ \/ ___/ ___|| _ \ ___ / _| __ _
_|_||_| | | | \___ \___ \| |_) | / __| |_ / _` |
|_||_|_| | |_| |___) |__) | __/ | (__| _| (_| |
|_|_|_| \___/|____/____/|_| \___|_| \__, |
@@ -7,7 +7,7 @@
OSSP cfg - Configuration Parsing
TODO
-
+
o finish/fix implementation of cfg_node_select()
o implement cfg_node_find()
o fix internal linkage with "left sibling" pointer
@@ -33,7 +33,7 @@
- wieso geht sample.cfg nicht als Arg bei "make check"?
- newline in error message
-$ ./cfg_test sample2.cfg
+$ ./cfg_test sample2.cfg
ERROR: <line 7, column 1: `1b;
<}> quu'>
@@ -41,7 +41,7 @@
rewrite-uri <regex> <subst> { <rewrite-cond> }
rewrite-uri ^/(.*) /path/$1 --redirect=permanent q{
- %{SOURCE} != "x"
+ %{SOURCE} != "x"
};
@@ -53,7 +53,7 @@
- option ("--foo=BAR") via name & regex
- argument ("foo") via regex
- amount:
- - 1
+ - 1
- 0/1 ?
- 0..n *
- 1..n +
@@ -89,16 +89,16 @@
TOK ::= string "..."
config ::= SEQ(directory|user|rewrite|access)
-directory ::= DIR("directory",<O>*,<A>)
-dir_options ::=
+directory ::= DIR("directory",<O>*,<A>)
+dir_options ::=
user ::= DIR("user",/^[a-z]$/)
-rewrite ::=
+rewrite ::=
access ::= "access" ("allow"|"deny"):action SEQ(access_list):acl
access_list ::= m/^!?%{ID}$/
acl ::= "acl" TOK:name acl_list
acl_list ::= SEQ(acl_entry)
-acl_entry ::= acl_action "from" net-addr:src "to" net-addr:dst
+acl_entry ::= acl_action "from" net-addr:src "to" net-addr:dst
acl_action ::= "allow"|"deny"
net_addr ::= net_hostname | net_ipv4addr | net_ipv6addr
@@ -124,28 +124,28 @@
---------------------------------------------------------------------------
sequence ROOT {
- directive foo;
+ directive foo;
directive bar;
directive quux --count=1:oo;
};
sequence bar-seq {
- directive foo --count=0:1;
+ directive foo --count=0:1;
directive baz --count=1:oo;
};
-directive foo {
+directive foo {
token - on|off|yes|no;
};
directive bar {
- token path /.*;
+ token path /.*;
sequence bar-seq;
};
-directive baz {
- option fuck;
- option fuck2;
+directive baz {
+ option fuck;
+ option fuck2;
sequence {
- directive foo {
+ directive foo {
option nase (baer|hugo);
- option foo [0-9];
+ option foo [0-9];
token ip-address;
};
};
@@ -182,8 +182,8 @@
-------------------------------------------------------------------------------
directive token {
- opt1 { /.../ opt2=/.../ } {
- directive { /^token$/ };
+ opt1 { /.../ opt2=/.../ } {
+ directive { /^token$/ };
name { m/.../; m/^[a-zA-Z][a-zA-Z0-9_.-]*$/ } ?;
name { m/(...|[a-zA-Z][a-zA-Z0-9_.-]*$)/ } ?;
regex { m/^.+$/ };
@@ -195,14 +195,14 @@
a?b((c|d)+e)?f
A m/a/ ?
-B m/b/
+B m/b/
{
{
C m/c/ ;
- D m/d/
+ D m/d/
} +
E m/e/
-} ?
+} ?
F f
<directive-match> ::= <token-match>+
|