On Fri, Apr 13, 2012 at 05:00:40PM -0300, Henrique de Moraes Holschuh wrote:
Well, we cannot have clist literals, only pair set literals. That makes this limitation of clist operations rather unfortunate.
Can BIRD be extended to allow operating on clists using pair sets?
I.e. clist.add(pair set), clist.delete(pair set)...
You could use clist.delete(pair set) or clist.filter(pair set). Only nonimplemented think is clist.add(pair set), which is operation that would expand compact representation of pair sets to explicit representation of clist, which is generally expensive and that may not be obvious to some users. For example, even restricted user from bird client could exhaust all memory by using show route command with some filter containing clist.add([(*,*)]). If we explicitly limit number of communities in clist, it could be done, but it is probably better idea to implement clist literals, which may be also useful for explicitly setting bgp_community with initial clist. -- Elen sila lumenn' omentielvo Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."