1
0
mirror of https://gitlab.labs.nic.cz/labs/bird.git synced 2024-05-11 16:54:54 +00:00
Martin Mares e2dc2f30ef Routing table core changes to support full route filtering:
o  Introduced rte_cow() which should be used for copying on write the
   rte's in filters. Each rte now carries a flag saying whether it's
   a real route (possessing table linkage and other insignia) or a local
   copy. This function can be expected to be fast since its fast-path
   is inlined.
o  Introduced rte_update_pool which is a linear memory pool used for
   all temporary data during rte_update. You should not reference it directly
   -- instead use a pool pointer passed to all related functions.
o  Split rte_update to three functions:

	rte_update	The front end: handles all checking, inbound
			filtering and calls rte_recalculate() for the
			final version of the route.
	rte_recalculate	Update the table according to already filtered route.
	rte_announce	Announce routing table changes to all protocols,
			passing them through export filters and so on.

   The interface has _not_ changed -- still call rte_update() and it will
   do the rest for you automagically.
o  Use new filtering semantics to be explained in a separate mail.
1999-04-05 20:25:03 +00:00
..