Commit graph

581 commits

Author SHA1 Message Date
Martin Mares 47b793064c 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.
1998-10-17 11:05:18 +00:00
Martin Mares 8c43696da0 Route update hook now gets network prefix as well as updated
route attributes.
1998-08-31 21:13:42 +00:00
Pavel Machek 48b41d5811 Do not segfault on iface == NULL. 1998-07-28 21:42:08 +00:00
Pavel Machek 87d2be86e5 Adding proto_dump_all() function 1998-07-09 19:36:52 +00:00
Martin Mares 962ba482fd Use '%I' instead of dirty address printing hacks. 1998-06-17 14:36:02 +00:00
Martin Mares 620a355a15 Now sending IF_CHANGE_CREATE when a new interface appears and IF_CHANGE_UP
only if it's really up.
1998-06-04 20:30:11 +00:00
Martin Mares 236d4eb8ce FIB_WALK and friends are now slightly more friendly. 1998-06-04 20:29:44 +00:00
Martin Mares 66e53309ac Dumping of _static_ attributes implemented. 1998-06-04 20:29:05 +00:00
Martin Mares b1e4f81485 We have full interface routes now. 1998-06-04 20:28:43 +00:00
Martin Mares 0cdbd3975a Handle route deletion without segfaults. A bit more debug dumps. 1998-06-04 20:28:19 +00:00
Martin Mares c5ffa44759 Skeleton of device route protocol. As it's tightly coupled with our kernel,
it sits here instead of `proto/dev'.
1998-06-03 08:42:16 +00:00
Martin Mares d9f330c5ff Protocol hooks. All of them may be NULL. 1998-06-03 08:40:10 +00:00
Martin Mares 7f4a39886c Basic protocol operations. 1998-06-03 08:38:53 +00:00
Martin Mares a5f1a60e02 Changed protocol declarations a bit. 1998-06-03 08:38:06 +00:00
Martin Mares 33beab4f6c Added configuration pool. 1998-06-03 08:36:34 +00:00
Martin Mares 4cc78c5082 - 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
  to a down/up sequence.

- Implemented the universal neighbour cache. (Just forget what did previous
  includes say of neighbour caching, this one is brand new.)
1998-06-01 21:41:11 +00:00
Martin Mares fe82105e5d Debug messages. 1998-05-26 21:43:45 +00:00
Martin Mares 8a48ecb8b1 Implemented scanning of network interfaces. Mostly very ugly code due to
terrible kernel interface (SIOGIFCONF and friends).
1998-05-26 21:42:05 +00:00
Martin Mares ed68a5c6a4 Resource pools are now named. 1998-05-26 21:37:37 +00:00
Martin Mares 6d45cf21be Added debug dump function, but it's still empty :( 1998-05-24 14:49:14 +00:00
Martin Mares ded3ee6ddd protos_init, not proto_init. 1998-05-24 14:48:52 +00:00
Martin Mares b53499cdaa Added interface index (used only by OS-dependent code since ifindexes itself
are OS-dependent).
1998-05-24 14:48:09 +00:00
Martin Mares a2ccbb0b97 Implemented timers. Using bird_clock_t for absolute time from now... 1998-05-24 14:40:29 +00:00
Martin Mares 235562ca5a Point-to-point links: added address of the opposite end. 1998-05-24 09:20:59 +00:00
Martin Mares 2326b001d6 Added routing table and routing attribute code. 1998-05-20 11:54:33 +00:00
Martin Mares 62aa008abd Parts of routing table code. Data structure declarations should be
complete now.
1998-05-15 07:54:32 +00:00
Martin Mares a8b6038225 Next attempt on data structures... 1998-05-03 16:42:45 +00:00
Martin Mares 1feea03e74 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.
1998-04-28 14:39:34 +00:00
Martin Mares c40e05a0df Added IP address manipulation macros, interface declarations and logging. 1998-04-23 14:01:15 +00:00
Martin Mares 481f69854a Added few route attributes. 1998-04-23 08:09:39 +00:00
Martin Mares 58ef912c6b First look at data structures. More to come tomorrow... 1998-04-22 12:58:34 +00:00