Age | Commit message (Collapse) | Author | |
---|---|---|---|
2006-12-21 | Check for overflow of others_len. This can not happen at the moment because | Claudio Jeker | |
less than 255 attributes can be allocated at max. OK claudio@ | |||
2006-12-18 | avoid p = realloc(p idiom, ok claudio, spotted deraadt | Henning Brauer | |
2006-05-27 | Unfuck community delete. The if () statement to match communities was FUBAR | Claudio Jeker | |
instead reverse logic and use the same if statement as in the match function. Issue found and debugged by Leen Besselink. Thanks. | |||
2006-04-12 | It is no longer allowed to change attributes in place. This corrupts the | Claudio Jeker | |
attribute cache. Instead remove attribute and readd it after beeing changed. This should fix the "att_diff: equal attributes encountered" error seen by Tony Sarendal. OK henning@ | |||
2006-03-15 | Fix a memory leak when communities are set or deleted. This seems to fix | Claudio Jeker | |
Sylvain Coutant memory issues. A lot of patience and testing by Sylvain. | |||
2006-02-09 | Implement "set community delete 65001:*" and friends. This will remove | Claudio Jeker | |
communities from the path attributes. Useful to make sure that the ones you set later are set by a (evil) peer. OK henning@ | |||
2006-02-09 | When comparing community type, cast to u_int16_t. The same is done for the | Claudio Jeker | |
AS. OK henning@ | |||
2006-02-09 | attr_free() should not modify others_len as it does not resize the others | Claudio Jeker | |
array. It just clears on entry by setting it to NULL and moving that NULL to the end of the array. With this it will be possible to remove attributes without readding them right afterwards. Because of this attr_diff() needs to be more careful because of passed NULL pointers. OK henning@ | |||
2006-01-20 | No need to calloc() others if others_len is 0. The 0 malloc() does not hurt | Claudio Jeker | |
(we do not access it) but does not help either. Finally it reduces head scratching when debugging the RIB. OK henning@ | |||
2006-01-20 | Doh. > not < and attr_compare() starts to work correctly. OK henning@ | Claudio Jeker | |
2006-01-10 | The attributes cache broke the set community filterset because community_set() | Claudio Jeker | |
modified the attribute data directly and corrupted the cache by doing it. It is no longer allowed to modify attributes via attr_optget() -> change attr->data. Instead remove the old attribute from the aspath and then add a new modifed one again. Included in this change is the removal of a "feature" that allowed only one community per AS. If you had problems to add multiple communities via filters then this was the problem. Looks good Henning. | |||
2006-01-10 | In attr_diff() compare the attributes flags too. They may be different and | Claudio Jeker | |
especially they are accounted in the hash. While there change a 0 to NULL. | |||
2006-01-05 | Cache optional BGP attributes (mostly communities) and use a simple | Claudio Jeker | |
pointer plus a ref counter to link the attributes to the path object. Saves +/- 10M on 11 full feeds. Looks good Henning | |||
2006-01-04 | Correctly count the number of allocated BGP attributes. Needs a own counter. | Claudio Jeker | |
2006-01-03 | Track some (memory) statistics in the RDE. Accessible via bgpctl. | Claudio Jeker | |
2006-01-03 | Move functions shared with bgpctl into new file util.c. Simplifies the | Claudio Jeker | |
link between bgpctl and bgpd mostly because of rde_attr.c. | |||
2005-12-30 | Remove unused attr_optlen() | Claudio Jeker | |
2005-12-30 | Use sys/hash.h instead of own built functions that work similar. | Claudio Jeker | |
While there reorder some structs to help with alignment. | |||
2005-12-19 | Better English in comment. | Claudio Jeker | |
2005-06-13 | realloc(3) correctly. Do not adjust the variable describing how much memory | Claudio Jeker | |
has been allocated until one knows the allocation has been successful. | |||
2005-06-10 | Make sure that the ATTR_EXTLEN flag is unset if the attribute length is | Claudio Jeker | |
smaller than 255 bytes. | |||
2005-06-10 | Introduce attr_optlen() to get the total lenght of an optional attribute | Claudio Jeker | |
plus header. Soon needed. | |||
2005-04-16 | Simplify return codes of aspath_asprint(). | Claudio Jeker | |
Return -1 on error 0 on success and make sure that in case of an error *ret is set to NULL. | |||
2005-04-15 | Fix memory leak in case aspath_snprint() returns an error (-1). | Claudio Jeker | |
OK henning@ | |||
2004-11-10 | It is not needed to mask the value wit 0xff as it is < 255. OK henning@ | Claudio Jeker | |
2004-08-10 | style, use sizeof() instead of a hardcoded value. | Claudio Jeker | |
2004-08-06 | Monster diff to get one step closer to IPv6 support. | Claudio Jeker | |
Cleanup path attribute handling. First of all kill struct attr_flags, all those infos are now in struct rde_aspath. Second move attribute parser functions into rde.c, rde_attr.c is shared between bgpd and bgpctl. Third reimplementation of the nexthop handling. Make it IPv6 ready and fix some major bug relating to "set nexthop". henning@ OK if it breaks nothing | |||
2004-08-05 | As usual cleanup on exit. OK henning@ | Claudio Jeker | |
2004-08-05 | Cleanup aspath specific functions and api. Mainly switch to a refcnt based | Claudio Jeker | |
allocation. This helps to save a bit of RAM. looks good henning@ | |||
2004-07-28 | The default localpreference is 100 and not 0. Found and ok henning@ | Claudio Jeker | |
2004-07-13 | fix some typos | Jared Yanovich | |
ok henning otto | |||
2004-07-05 | The rde no longer needs to check if the nexthop is the loopback address. | Claudio Jeker | |
This is now down in the parent. OK henning@ | |||
2004-07-05 | fix a few KNF fallouts | Henning Brauer | |
2004-06-24 | First step at multiprotocol support, only partially done. | Claudio Jeker | |
OK henning@ | |||
2004-06-24 | Make community set strict aligenment save, remove unneeded ENSUREs | Claudio Jeker | |
OK henning@ djm@ | |||
2004-06-22 | Cleanup. jajaja henning@ | Claudio Jeker | |
2004-06-20 | at least somewhat consistently name the TAILQ_ENTRYs... this confused me | Henning Brauer | |
more than once | |||
2004-05-21 | RFC 2796 bgp route reflector support. This is very useful in conjunction | Claudio Jeker | |
with templates. looks good, go for it henning@ | |||
2004-05-17 | extend filter language to allow basic setting of COMMUNITIES attribute. | Damien Miller | |
ok claudio@ | |||
2004-05-07 | add a filter option to dump prefixes learned in UPDATEs into a PF table, | Damien Miller | |
intended for building realtime BGP blacklists (e.g. with spamd); ok claudio & henning | |||
2004-04-30 | spelling | Theo de Raadt | |
2004-04-08 | swap the last two parameters to TAILQ_FOREACH_REVERSE. matches what FreeBSD | Henning Brauer | |
and NetBSD do. ok millert@ mcbride@ markus@ ho@, checked to not affect ports by naddy@ | |||
2004-03-20 | comment spelling fixes; ok henning@ | David Krause | |
2004-03-12 | *size is a u_int16_t not a pointer so use 0 instead of NULL. | Claudio Jeker | |
2004-03-12 | bgpctl has a empty-as keyword so make this actually work. Handle AS_EMPTY | Claudio Jeker | |
in aspath_match(). | |||
2004-03-12 | I modified the print format for AS_SET so keep the aspath_strlen() function | Claudio Jeker | |
in sync. | |||
2004-03-12 | tab at EOL | Claudio Jeker | |
2004-03-12 | Rewrite community_match() for loop. yaya henning@ | Claudio Jeker | |
2004-03-11 | Add basic support for communities. Currently it is only possible to filter | Claudio Jeker | |
on communities, e.g match from any community 24640:* set localpref 666 OK henning@ | |||
2004-03-11 | Ensure that aspath_snprint() returns a zero terminated string also if the | Claudio Jeker | |
aspath is "". Found, OK and tsc tsc tsc henning@ |