Statistics
| Branch: | Revision:

iof-bird-daemon / nest / route.h @ f3792601

History | View | Annotate | Download (11.6 KB)

# Date Author Comment
730f2e2c 12/01/1999 03:10 PM Martin Mares

Added dumping of routing tables (`show route'). This includes filtering.

774f1499 11/25/1999 12:01 PM Pavel Machek

Fix timeouts. Triggered updates are not done, yet.

8d24b689 11/18/1999 02:41 PM Martin Mares

Allow EA type to be set to 'undefined' which overrides all further definitons
of that EA in the same list and causes ea_find() to fail unless you add
EA_ALLOW_UNDEF to the second argument.

ea_sort (resp. ea_do_prune()) removes all undef'd attributes from the list....

da40b6f7 11/18/1999 01:42 PM Martin Mares

DEF_PREF_UKR and DEF_PREF_SINK removed.

2727bb7c 11/04/1999 01:29 PM Martin Mares

Renamed attr->attrs to attr->eattrs.

9c11ec9e 08/03/1999 07:34 PM Martin Mares

Implemented a Table-to-Table protocol a.k.a The Pipe.

7de45ba4 08/03/1999 07:33 PM Martin Mares

Kernel route syncer supports multiple tables.

The changes are just too extensive for lazy me to list them
there, but see the comment at the top of sysdep/unix/krt.c.
The code got a bit more ifdeffy than I'd like, though.

Also fixed a bunch of FIXME's and added a couple of others. :)

9c9e49ac 05/31/1999 07:15 PM Pavel Machek

Added extended attributes for rip.

0e02abfd 05/17/1999 08:14 PM Martin Mares

From now we support multiple tables. The master_table variable is
definitely gone. Both rte_update() and rte_discard() have an additional
argument telling which table should they modify.

Also, rte_update() no longer walks the whole protocol list -- each table...

08e2d625 04/12/1999 06:01 PM Martin Mares

Removed TOS support. This simplifies many things a lot.

e2dc2f30 04/05/1999 08:25 PM Martin Mares

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...

c10421d3 04/03/1999 01:05 PM Martin Mares

More changes to the kernel syncer.

o Now compatible with filtering.
o Learning of kernel routes supported only on CONFIG_SELF_CONSCIOUS
systems (on the others it's impossible to get it semantically correct).
o Learning now stores all of its routes in a separate fib and selects...

b77ae37d 03/17/1999 01:09 PM Martin Mares

Implemented extended route attributes and all related functions.

e16155ae 03/04/1999 06:36 PM Martin Mares

KRT: Implemented asynchronous route / interface state notifications
(via Netlink). Tweaked kernel synchronization rules a bit. Discovered
locking bug in kernel Netlink :-)

Future plans: Hunt all the bugs and solve all the FIXME's.

1b769b08 03/01/1999 08:13 PM Martin Mares

Renamed struct rtattr to struct rta to make things more consistent and
avoid namespace clashes with <linux/rtnetlink.h>. Other files should
not be affected since they use 'rta' directly.

2569bc40 02/13/1999 07:13 PM Martin Mares

Fixed bug in FIB_ITERATE_END: it assumed the control variable is named
"z". I've added an argument specifying name of the variable.

Renamed "again" label in FIB_ITERATE_* to "fis_again" to avoid name
clashes.

3ab001b9 12/20/1998 02:01 PM Martin Mares

Rewrote fib functions to make them insert/delete/asynchronous-walk safe.
This is implemented in a way similar to lib/slists.h, but it took some
more effort to make rehashing not disturb the readers. We do it by just
taking highest k bits of ipa_hash as our hash value and sorting each...

618533af 12/08/1998 06:30 PM Martin Mares

Added source RTS_DUMMY for temporary routes. They should never appear
in the main table.

04925e90 12/07/1998 09:59 PM Martin Mares

Minor rte/rta interface changes:

o  rte can now contain a pointer to both cached and uncached rta. Protocols
which don't need their own attribute caching can now just fill-in a rta,
link it to rte without any calls to attribute cache and call rte_update()...
12df4d90 12/07/1998 10:15 AM Martin Mares

KRF_* flags moved to krt.h as they are internal to kernel syncer,
fib->pad0,pad1 renamed to x0,x1 and in case of struct net x0 is reserved
for kernel syncing as well.

78d06cf2 12/06/1998 11:11 PM Martin Mares

Removed protocol-specific data in rte for protocol static since no
such data ever existed.

feb6abe0 10/20/1998 04:12 PM Pavel Machek

RIP now actually talks to itself.

a0762910 10/20/1998 03:13 PM Martin Mares

Added pointer to network to RTE. The complications with passing NET separately
aren't worth 4 bytes per RTE.

rte_discard and rte_dump don't need net * as parameter.

4c45595e 10/18/1998 10:24 PM Martin Mares

o FIB flags now available for FIB users.
o struct network: FIB flags used for kernel syncing.
o struct network: `next' field deleted (historical relic).

0432c017 10/18/1998 11:53 AM Martin Mares

Split protocol init to building of protocol list and real protocol init.
Added kernel route table syncer skeleton.

5b22683d 10/18/1998 11:13 AM Martin Mares

After contemplating about RIP route timeouts for a long time, I've implemented
protocol callbacks for route insertion and deletion from the central table.
RIP should maintain its own per-protocol queue of existing routes, scan it
periodically and call rte_discard() for routes that have timed out.

47b79306 10/17/1998 11:05 AM Martin Mares

Solve chicken-and-egg problems with protocol startup. We now queue all inactive
protocols and don't send route/interface updates to them and when they come up,
we resend the whole route/interface tables privately.

Removed the "scan interface list after protocol start" work-around.

236d4eb8 06/04/1998 08:29 PM Martin Mares

FIB_WALK and friends are now slightly more friendly.

4cc78c50 06/01/1998 09:41 PM Martin Mares

- Rewrote whole interface logic. Removed support for multiple addresses per
interface since it makes much trouble everywhere. Instead, we understand
secondary addresses as subinterfaces.

- In case interface addresses or basic flags change, we simply convert it...

a2ccbb0b 05/24/1998 02:40 PM Martin Mares

Implemented timers. Using bird_clock_t for absolute time from now...

2326b001 05/20/1998 11:54 AM Martin Mares

Added routing table and routing attribute code.

62aa008a 05/15/1998 07:54 AM Martin Mares

Parts of routing table code. Data structure declarations should be
complete now.

a8b60382 05/03/1998 04:42 PM Martin Mares

Next attempt on data structures...

1feea03e 04/28/1998 02:39 PM Martin Mares

Changed #include <x/y> to #include "x/y" for our local includes, so that
gcc -MM can be used to separate them from the system ones.

Added automatic generation of dependencies.

481f6985 04/23/1998 08:09 AM Martin Mares

Added few route attributes.

58ef912c 04/22/1998 12:58 PM Martin Mares

First look at data structures. More to come tomorrow...