Statistics
| Branch: | Revision:

iof-bird-daemon / nest / protocol.h @ 9c11ec9e

History | View | Annotate | Download (7.8 KB)

# Date Author Comment
9c11ec9e 08/03/1999 07:34 PM Martin Mares

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

9d885689 08/03/1999 07:31 PM Martin Mares

Protocol engine bug fixes:

o  Make proto_config->table always point to the right
table even if it should be the default one.
o When shutting down, kill protocol in reverse order
of their priority.
o When stopping a protocol down, disconnect it from...
bb027be1 05/31/1999 06:55 PM Martin Mares

Added extra argument to rt_update hook which contains a pointer to the
temporary attribute list.

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

9a158361 05/06/1999 09:38 PM Martin Mares

I rewrote the interface handling code, so that it supports multiple
addresses per interface (needed for example for IPv6 support).

Visible changes:

o struct iface now contains a list of all interface addresses (represented
by struct ifa), iface->addr points to the primary address (if any)....

9e0e485e 04/05/1999 08:17 PM Martin Mares

Added some new protocol hooks (look at the comments for better explanation):

make_tmp_attrs        Convert inline attributes to ea_list
store_tmp_attrs Convert ea_list to inline attributes
import_control Pre-import decisions
69ec9087 04/03/1999 01:01 PM Martin Mares

Added new protocol hook for dumping of protocol-dependent route
attributes.

Please implement in all protocols.

7dc4827c 03/26/1999 09:50 PM Martin Mares

Added everything protocols need to know about multiple routing tables,
i.e. struct proto now contains field 'table' pointing to routing table
the protocol is attached to. Use this instead of &master_table.

Modified all protocols except the kernel syncer to use this field.

4ba84ebc 03/26/1999 09:37 PM Martin Mares

Slightly better generator of default protocol instance names.

529c4149 03/17/1999 02:31 PM Martin Mares

Allow input and output filters (only accept/reject style as we didn't define
modifying filters yet) to be attached to protocol instances.

c612a3be 03/17/1999 01:13 PM Martin Mares

Removed the `rta_same' hook since it's no longer needed (all protocols
needing some local information should use extended attrs and cached
rta's).

c1f8dc91 03/09/1999 10:27 PM Ondrej Filip

Yes, joining the crew. Sorry for being late. Added dummy functions for OSPF.

b2280748 03/03/1999 07:33 PM Martin Mares

Introduced protocol priority (all 'normal' protocols should use the
default zero priority). No more "kernel syncer initialized before
device routes" problems.

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.

f4aabcee 02/13/1999 08:15 PM Martin Mares

Perform gracious shutdown upon receipt of SIGTERM. Finally we can
test the whole protocol shutdown code... :)

64011f89 02/11/1999 10:45 PM Martin Mares

struct proto again contains instance name (a copy of proto->cf->name).

31b3e1bb 02/05/1999 09:37 PM Martin Mares

Implemented new configuration/reconfiguration interface and defined protocol
state machines. Full explanation will follow soon.

a1bf6440 12/06/1998 06:21 PM Martin Mares

Added skeleton of static route protocol.

50d8424a 11/29/1998 10:03 PM Martin Mares

Added configuration of the device internal protocol. This is primarily
intended to serve as an example of interface pattern list use. As a side
effect, you can disable generating of device routes by disabling
this protocol.

bd5d0d62 11/29/1998 02:40 PM Martin Mares

Allow setting debug value and `disabled' flag in protocol definition.

acc62f5e 10/20/1998 03:17 PM Martin Mares

Insert/remove hooks return void, not int.

f184ea6f 10/19/1998 05:45 PM Martin Mares

Proto struct now contain (down | starting | up) state.

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.

8c43696d 08/31/1998 09:13 PM Martin Mares

Route update hook now gets network prefix as well as updated
route attributes.

87d2be86 07/09/1998 07:36 PM Pavel Machek

Adding proto_dump_all() function

a5f1a60e 06/03/1998 08:38 AM Martin Mares

Changed protocol declarations a bit.

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

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

Added routing table and routing attribute code.

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.

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

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