]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
After today's lengthy discussions about filter syntax, let's clean up
authorMartin Mares <mj@ucw.cz>
Mon, 29 Mar 1999 19:04:14 +0000 (19:04 +0000)
committerMartin Mares <mj@ucw.cz>
Mon, 29 Mar 1999 19:04:14 +0000 (19:04 +0000)
whitespace/semicolon rules for whole config file:

   o  All non-zero amounts of whitespace are equivalent to single space
      (aka `all the whitespace has been born equal' ;-)).
   o  Comments count as whitespace.
   o  Whitespace has no syntactic signifance (it can only separate lexical
      elements).
   o  Consequence: line ends are no longer treated as `;'s.
   o  Every declaration must be terminated by an explicit `;' unless
      or by a group enclosed in `{' and `}'.

conf/cf-lex.l
conf/confbase.Y
doc/bird.conf.example
nest/config.Y

index d000f97260dc62ec3818f16f347fd2c9d4eaeee5..b6b0df70f39ad22b711d5f614ee4bac849e40030 100644 (file)
@@ -119,8 +119,7 @@ WHITE [ \t]
 
 {WHITE}+
 
-\\\n   conf_lino++;
-\n     { conf_lino++; return ';'; }
+\n     conf_lino++;
 
 #      BEGIN(COMMENT);
 
@@ -131,7 +130,6 @@ WHITE [ \t]
 <COMMENT>\n {
   conf_lino++;
   BEGIN(INITIAL);
-  return ';';
 }
 
 <COMMENT>.
index 7b5caf5fe3c47dfc012cd464ec43661d899d2eba..880b0df52d9ab6f56759373cb8344a4aecf20e8a 100644 (file)
@@ -54,10 +54,10 @@ config: conf_entries END {
 
 conf_entries:
    /* EMPTY */
- | conf_entries conf ';'
+ | conf_entries conf
  ;
 
-CF_ADDTO(conf, /* EMPTY */)
+CF_ADDTO(conf, ';')
 
 /* Constant expressions */
 
@@ -74,7 +74,7 @@ expr:
 
 CF_ADDTO(conf, definition)
 definition:
-   DEFINE SYM '=' expr {
+   DEFINE SYM '=' expr ';' {
      if ($2->class != SYM_VOID) cf_error("Symbol already defined");
      $2->class = SYM_NUMBER;
      $2->aux = $4;
index d91a792a9b4b538cdea34b1adb94953e24e93adb..f700f2fb0eb24d738aec0d13114f3974c7228008 100644 (file)
@@ -4,44 +4,44 @@
 
 # Yet another comment
 
-#router id 62.168.0.1
+#router id 62.168.0.1;
 
-#define xyzzy = 120+10
+#define xyzzy = 120+10;
 
 #filter sink { reject; }
 #filter okay { accept; }
 
 #protocol rip MyRIP_test {
-#      preference xyzzy
-#      debug all
+#      preference xyzzy;
+#      debug all;
 #}
 
 protocol direct {
-#      disabled
-#      interface "-eth*", "*"
+#      disabled;
+#      interface "-eth*", "*";
 }
 
 protocol kernel {
-#      disabled
-#      learn                   # Learn all routes from the kernel
-       persist                 # Don't remove routes on bird shutdown
-       scan time 20            # Scan kernel routing table every 20 seconds
-#      async off               # Netlink: Disable asynchronous events
-#      input filter sink
-#      output filter okay
+#      disabled;
+#      learn;                  # Learn all routes from the kernel
+       persist;                # Don't remove routes on bird shutdown
+       scan time 20;           # Scan kernel routing table every 20 seconds
+#      async off;              # Netlink: Disable asynchronous events
+#      input filter sink;
+#      output filter okay;
 }
 
 protocol device {
-       scan time 10            # Scan interfaces every 10 seconds
+       scan time 10;           # Scan interfaces every 10 seconds
 }
 
 protocol static {
-#      disabled
-#      route 0.0.0.0/0 via 62.168.0.13
-#      route 62.168.0.0/25 reject
-#      route 10.0.0.0/8 reject
-#      route 10.1.1.0:255.255.255.0 via 62.168.0.3
-#      route 10.1.2.0:255.255.255.0 via 62.168.0.3
-#      route 10.1.3.0:255.255.255.0 via 62.168.0.4
-#      route 10.2.0.0/24 via "arc0"
+#      disabled;
+#      route 0.0.0.0/0 via 62.168.0.13;
+#      route 62.168.0.0/25 reject;
+#      route 10.0.0.0/8 reject;
+#      route 10.1.1.0:255.255.255.0 via 62.168.0.3;
+#      route 10.1.2.0:255.255.255.0 via 62.168.0.3;
+#      route 10.1.3.0:255.255.255.0 via 62.168.0.4;
+#      route 10.2.0.0/24 via "arc0";
 }
index 61a12cab7b570535d28cba9adb1563d887152f8a..c855f093c7dc0d38479928aad496e7c666a7192a 100644 (file)
@@ -26,7 +26,7 @@ CF_GRAMMAR
 /* Setting of router ID */
 
 CF_ADDTO(conf, rtrid)
-rtrid: ROUTER ID idval {
+rtrid: ROUTER ID idval ';' {
    new_config->router_id = $3;
    }
  ;