Hi! On Thu, Jul 03, 2014 at 12:48:04PM +0200, Ondrej Zajicek wrote:
This is expected, as .add argument may be a (e)clist, but not a (E)C set, and [ (ro,MyASN,10856), (ro,MyASN,3) ] expression is an EC set. Hm... Now I'm confused. "clist is similar to a set" I understand that as I can define eclist variable in a similar way: eclist var; var = [ ... ];
I tried that: filter Reject_Static eclist cmn; { cmn = [ (ro,MyASN,10856), (ro,MyASN,3) ]; print cmn.len; zzz; bgp_ext_community.add(cmn); accept; } protocol static TEST { import filter Reject_Static; route 185.61.244.0/22 blackhole; } bird> configure Reading configuration from /usr/local/etc/bird.conf Reconfigured Jul 3 12:26:47 gate bird: TEST: Reconfigured Jul 3 12:26:47 gate bird: TEST: Shutting down Jul 3 12:26:47 gate bird: TEST: State changed to flush Jul 3 12:26:47 gate bird: TASK: Initializing [disabled] Jul 3 12:26:47 gate bird: TEST: State changed to down Jul 3 12:26:47 gate bird: TEST: Starting Jul 3 12:26:47 gate bird: TEST: Connected to table master Jul 3 12:26:47 gate bird: TEST: State changed to feed Jul 3 12:26:47 gate bird: TEST > filtered out 185.61.244.0/22 blackhole "print cmn.len" does not print anything neither in syslog nor in stderr, when running with -d switch.