Constants can't contain other constants?

Ondrej Zajicek santiago at crfreenet.org
Thu Aug 21 10:38:08 CEST 2014


On Thu, Aug 21, 2014 at 05:12:04PM +1200, Michael Fincham wrote:
> Hi everyone,
> 
> I'm presently investigating BIRD as a (much appreciated!) replacement for Quagga and running in to some behaviour that isn't clear from reading the documentation.
> 
> I'm looking at ways to consistently template BGP communities received from / sent to peers across multiple routers, and have attempted this:
> 
> define test_international = (test_asn, 90);
> define test_national = (test_asn, 100);
> define test_ix = (test_asn, 200);
> define test_bilat = (test_asn, 300);
> define test_customer = (test_asn, 400);
> define test_infrastructure = (test_asn, 500);
...
> This suggests to me that one cannot define a constant including another
> existing constant in this manner?

Well, you could generally use constants in constants (you are using
test_asn in your example), just the set literals are a bit complicated
and do not allow constants for whole pair.

> If so, is the best approach instead to
> define constants for individual communities and use re-usable 'functions'
> to group them logically?

You could use:

define val_blackhole = 666;

define test_send_to_transit = [(test_asn, val_blackhole)];

-- 
Elen sila lumenn' omentielvo

Ondrej 'Santiago' Zajicek (email: santiago at 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."
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20140821/c6bf06fe/attachment-0001.asc>


More information about the Bird-users mailing list