]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Function unset() accepts attributes declared in config
authorkaterina.kubecova <katerina.kubecova@nic.cz>
Wed, 20 Sep 2023 07:50:22 +0000 (09:50 +0200)
committerkaterina.kubecova <katerina.kubecova@nic.cz>
Wed, 20 Sep 2023 11:50:58 +0000 (13:50 +0200)
filter/config.Y

index a87fb0e5ff93dfb02cf478102380071872ee6f43..7e970185c97abb37acf34c5c77ad16489e709ecf 100644 (file)
@@ -1002,6 +1002,17 @@ cmd:
  | UNSET '(' dynamic_attr ')' ';' {
      $$ = f_new_inst(FI_EA_UNSET, $3);
    }
+   
+ | UNSET '(' symbol_known ')' ';' {
+     switch ($3->class) {
+       case SYM_ATTRIBUTE:
+        $$ = f_new_inst(FI_EA_UNSET, *$3->attribute);
+        break;
+       default:
+        cf_error("Can't unset symbol %s", $3->name);
+     }
+ }
+  
  | break_command var_list_r ';' {
     $$ = f_print($2, !!$2, $1);
    }