Statistics
| Branch: | Revision:

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

History | View | Annotate | Download (13.2 KB)

# Date Author Comment
f98e2915 06/01/2009 12:07 PM Ondrej Zajicek

The pipe cleanup.

23ac9e9a 05/31/2009 01:24 PM Ondrej Zajicek

Changes pipes to transfer all routes between routing table, not just optimal routes.

ea2ae6dd 05/22/2009 03:12 PM Ondrej Zajicek

Change import/preimport to export/preexport to be consistent with filters.

4d176e14 05/11/2009 12:01 AM Ondrej Filip

'show route protocol <p>' added to CLI.

98ac6176 06/25/2004 04:39 PM Ondrej Filip

A lot of changes:
- metric is 3 byte long now
- summary lsa originating
- more OSPF areas possible
- virtual links
- better E1/E2 routes handling
- some bug fixes..

I have to do:
- md5 auth (last mandatory item from rfc2328)
- !!!!DEBUG!!!!! (mainly virtual link system has probably a lot of bugs)...

8bf684ec 06/11/2004 09:05 AM Ondrej Filip

RTS_OSPF_BONDARY is nonsense, RTS_OSPF_IA must have smaller id than RTS_OSPF_EXT

a60277b9 05/31/2004 01:35 PM Ondrej Filip

Added RTD_NONE /* Just for internal use */

ad390755 06/21/2000 07:40 PM Pavel Machek

RIP bugfix

566a0eed 06/02/2000 12:29 PM Martin Mares

Removed rta_find() since nobody uses it and it's more convenient
to use ea_find() directly.

ce4aca09 06/01/2000 04:16 PM Martin Mares

FIB documentation.

I've changed the init callback type to a typedef to work around a bug
in kernel-doc I'm too lazy to hunt now.

5919c66e 05/30/2000 09:25 PM Martin Mares

Route attributes for OSPF.

73232f6b 05/30/2000 10:36 AM Ondrej Filip

Better rt dumping.

cdc25e8d 05/28/2000 07:07 PM Ondrej Filip

To find out a type of route (external, inter/intra area)

0ba8a614 05/19/2000 07:40 PM Martin Mares

Fixed a very nasty bug in FIB iterators.

ac5d8012 05/19/2000 10:46 AM Martin Mares

Asynchronous feeding of protocols.

56d6c530 05/13/2000 11:42 AM Martin Mares

Added fib_route() which does (although very slow) lookup of longest-match
routing in a FIB.

ec21aecf 05/11/2000 10:33 AM Pavel Machek

Fixed nasty segfault in rip.

c0100454 05/10/2000 06:54 AM Pavel Machek

Added more convient interface for ea_find.

What is special about int default;? Compiler chokes on that!

8abbde02 05/08/2000 07:11 PM Martin Mares

Several simplifications of the fib iterators.

916c8c0a 05/08/2000 10:40 AM Martin Mares

Use preferences properly.

23693958 05/07/2000 11:28 AM Martin Mares

Implemented `show route <...> stats'.

ce1da96e 05/06/2000 10:57 PM Martin Mares

Added commands `show route protocol <p>' and `show route import <p>' which
show the routing table as exported to the protocol given resp. as returned
from its import control hook.

To get handling of filtered extended attributes right (even in the old
`show route where <filter>' command), the get_route_info hook gets an...

beaf86e1 05/04/2000 09:23 PM Martin Mares

Removed RTS_RIP_EXT.

51a183af 04/17/2000 11:23 AM Martin Mares

Define EAF_ORIGINATED and propagate it properly when merging attribute lists.

c6add07f 04/17/2000 10:18 AM Martin Mares

Printing of AS paths and community sets.

b475c543 04/10/2000 10:08 PM Martin Mares

Fix comments.

73e03bce 04/10/2000 02:45 PM Pavel Machek

As usuall, most important info was missing.

6f57dcc0 04/10/2000 12:39 PM Martin Mares

Export ea_same() and ea_hash().

d3feceff 04/09/2000 10:04 PM Martin Mares

BGP doesn't need any inline attributes.

3991d84e 04/01/2000 10:19 AM Martin Mares

Changed initialization of protocol list -- now we call proto_build() instead
of calling the protocols manually.

Implemented printing of dynamic attributes in `show route all'.

Each protocol can now register its own attribute class (protocol->attr_class,...

ca97b489 03/20/2000 06:45 PM Martin Mares

Define new data types for BGP.

9f4929e7 03/04/2000 10:30 PM Martin Mares

Renamed EAF_INLINE to EAF_TEMP to make the name reflect the real meaning.

b9626ec6 03/04/2000 10:21 PM Martin Mares

Garbage collector events and counters are now per table and one day
they can be made configurable if it turns out to be useful.

ee76a92a 03/04/2000 09:09 PM Martin Mares

Implemented real attribute cache.

c8518ae1 03/01/2000 03:05 PM Martin Mares

Removed RTF_EXTERIOR and RTF_TAGGED (unused).

50fe90ed 01/16/2000 04:44 PM Martin Mares

First attempt on dynamic reconfiguration. There are still lots of bugs
and problems to solve, but the hardest part works.

476e1084 12/16/1999 01:51 PM Martin Mares

Minor cleanups.

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