I also noticed once that my filters only work correctly when I make (x, y, z) ~ bgp_large_community, the other way around it didn't work for me either. I didn't think anything about it though. Maybe this is a bug?
On Mon, 15 May 2023 12:59:11 +0200 Tim Weippert via Bird-users <[email protected]> wrote: > Hi List, > > maybe i'm doing something wrong, but if i use some quick and dirty > filter on the CLI all is working as expecting: > > show route where bgp_large_community ~ [(65000, 0, 1001)] > show route where (65000, 0, 1001) ~ bgp_large_community > > both get the expected results, show all routes with the specific > community attached. > > If i use it in a filter function to filter the routes out: > > function filter_large(int TestID) > { > if ( bgp_large_community ~ [(65000, 0, TestID)] ) then { return false; } > return true; > } > > i get "all" routes, if clause doesn't get catched. > > function filter_large_V2(int TestID) > { > if ( (65000, 0, TestID) ~ bgp_large_community ) then { return false; } > return true; > } > > with the V2 function i get what i want, filter out all routes with the > community attached and show all the rest. > > I'm a little confused here, because the first version of the if clause is > used for bgp_ext_community on several functions on my setup and working > as expected, only for bgp_large_community i need to switch to if clause > from version V2, and only in a function? > > Can someone confirm or explain this? > > regards, > tim > > -- > Tim Weippert > http://weiti.org - [email protected] > GPG Fingerprint - E704 7303 6FF0 8393 ADB1 398E 67F2 94AE 5995 7DD8 -- Marek Küthe [email protected] er/ihm he/him
pgpu01jqA9XRj.pgp
Description: OpenPGP digital signature
