mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-22 01:31:55 +00:00
Fixes behavior of defined() on bgp_community attribute.
This commit is contained in:
parent
1528d30aeb
commit
74e9331fe0
@ -607,12 +607,6 @@ interpret(struct f_inst *what)
|
||||
e = ea_find( (*f_rte)->attrs->eattrs, what->a2.i );
|
||||
|
||||
if (!e) {
|
||||
/* A special case: undefined int_set looks like empty int_set */
|
||||
if ((what->aux & EAF_TYPE_MASK) == EAF_TYPE_INT_SET) {
|
||||
res.type = T_CLIST;
|
||||
res.val.ad = adata_empty(f_pool);
|
||||
break;
|
||||
}
|
||||
/* Undefined value */
|
||||
res.type = T_VOID;
|
||||
break;
|
||||
@ -821,7 +815,11 @@ interpret(struct f_inst *what)
|
||||
|
||||
case P('C','a'): /* Community list add or delete */
|
||||
TWOARGS;
|
||||
if (v1.type != T_CLIST)
|
||||
|
||||
/* Replace undefined value with empty community list */
|
||||
if (v1.type == T_VOID)
|
||||
v1.val.ad = adata_empty(f_pool);
|
||||
else if (v1.type != T_CLIST)
|
||||
runtime("Can't add/delete to non-clist");
|
||||
if (v2.type != T_PAIR)
|
||||
runtime("Can't add/delete non-pair");
|
||||
|
Loading…
Reference in New Issue
Block a user