summaryrefslogtreecommitdiffstats
path: root/lib/agg_table.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* lib: make some variables staticDavid Lamparter2019-12-131-1/+1
| | | | Signed-off-by: David Lamparter <equinox@diac24.net>
* bgpd, lib, zebra: Wrapper get/set of table->info pointerDonald Sharp2018-09-241-1/+1
| | | | | | | Wrapper the get/set of the table->info pointer so that people are not directly accessing this data. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* lib: Add Aggregate Table and Aggregate_nodeDonald Sharp2018-08-301-0/+59
Add a abstraction for `struct route_node` and `struct route_table` such that we can have an aggregate route_node and table. This is because only bgp/rfapi and ripng use the aggregate data pointer in `struct route_node`. For full route tables other routing protocols and tables are paying a 8 byte overhead per node. A full bgp table ends up being ~1.2 million routes in bgp and zebra. This is not an insiginificant amount of data. So create the data structures for this replacement, but do not replace the aggregate pointer yet. This is because later commits will convert rfapi and ripng over to this new data, and finally we'll move the aggregate pointer. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>