Deleting unallowed communities
Alexander Shikoff
minotaur at crete.org.ua
Mon Sep 6 19:18:06 CEST 2010
On Mon, Sep 06, 2010 at 07:00:58PM +0200, Ondrej Zajicek wrote:
> On Mon, Sep 06, 2010 at 07:45:15PM +0300, Alexander Shikoff wrote:
> > Hello,
> >
> > is it possible in filter to delete all communities except ones which
> > are stored in pre-defined list?
>
> It is possible to do that, but you have to manually invert the list
> of communities. For example instead of a list of allowed communities:
>
> [(123,100), (456,200), (789,300)]
>
> you would use a list of rejected communities:
>
> [(0,0)..(123,99), (123,101)..(456,199), (456,201)..(789,299),
> (789,301)..(65535,65535)]
>
> in bgp_community.delete().
Ondrej, thank you for reply.
I tried the following code:
function check_community (clist c)
clist wrong;
{
wrong = [
(0,0)..(0,25371),
(0,25373)..(0,31209),
(0,31211)..(31209,65535),
(31210,0)..(31210,25371),
(31210,25373)..(31210,65535),
(31211,0)..(65535,65281),
(65535,65283)..(65535,65535)
];
c.delete(wrong);
}
But bird reports error:
bird> configure
Reading configuration from /usr/local/etc/bird.conf
/usr/local/etc/bird.conf, line 37: syntax error
Line 37 is:
c.delete(wrong);
I tried both c.delete(wrong) and delete(c,wrong) - the result is the same:
syntax error.
--
MINO-RIPE
More information about the Bird-users
mailing list