summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
1999-03-01If we are compiling with debugging enabled and libefence is available,Martin Mares
link it to get debugging malloc.
1999-03-01Implemented netlink protocol parsing functions. More to come tomorrow.Martin Mares
1999-03-01Added SK_MAGIC type sockets for internal use by system dependent code,Martin Mares
especially for netlink communication.
1999-03-01Hopefully ended translating to new interfacePavel Machek
1999-03-01Added skeletal version of Linux netlink interface. It doesn't work yet,Martin Mares
but the framework is there and I'll try finish it soon.
1999-03-01Include "config.h" instead of "autoconf.h" in all Modules lists to make definesMartin Mares
in the static portion of configuration includes available as well.
1999-03-01Renamed struct rtattr to struct rta to make things more consistent andMartin Mares
avoid namespace clashes with <linux/rtnetlink.h>. Other files should not be affected since they use 'rta' directly.
1999-03-01Use traditional Unix route/iface interface only when CONFIG_NETLINKMartin Mares
is not defined. Also moved declarations of Unix iface logic to krt.h.
1999-03-01Pruned the TODO list.Martin Mares
1999-02-15More rip fixes (config data moved to struct rip_proto_config), stillPavel Machek
not tested.
1999-02-13Cleaned up TODO file.Martin Mares
That's all for today, midnight gets closer.
1999-02-13Synced example config with new options.Martin Mares
1999-02-13Implemented static device routes.Martin Mares
Expect for reconfiguration issues, the static protocol is complete now.
1999-02-13Parameter order for the proto->if_notify hook was different in the includeMartin Mares
file and different in reality. Decided to use the same order as we do for proto->rt_notify (i.e., first new value and second the old one).
1999-02-13'#' comments in config files are equivalent to end of line, thereforeMartin Mares
also to implicit ';'.
1999-02-13Implemented garbage collection of routing tables to delete orphaned networkMartin Mares
nodes having no routes attached. Such cleanup must be done from event handler since most functions manipulating the routing tables expect network entries won't disappear from under their hands and it's also probably faster when done asynchronously.
1999-02-13Static protocol doesn't need any shutdown function. Everything getsMartin Mares
disposed by the core: neighbors, rte's, etc's...
1999-02-13Don't send any neighbor notifications to protocols being flushed.Martin Mares
1999-02-13When protocols go down, prune the neighbor list.Martin Mares
1999-02-13When shutting down, remove all routes (except for RTS_INHERIT and RTS_DEVICEMartin Mares
routes) from kernel routing tables unless the "persist" switch is set.
1999-02-13Moved sanity check of protocol state during annoucements to rte_announce.Martin Mares
1999-02-13Perform gracious shutdown upon receipt of SIGTERM. Finally we canMartin Mares
test the whole protocol shutdown code... :)
1999-02-13Squashed one bug in timing of route scans.Martin Mares
1999-02-13Synchronize signals to the main select/event/timer loop.Martin Mares
Parse command line options.
1999-02-13Implemented real cleanup and pruning of routing table on protocol shutdown.Martin Mares
1999-02-13Pass new argument to FIB_ITERATE_END.Martin Mares
1999-02-13Fixed bug in FIB_ITERATE_END: it assumed the control variable is namedMartin Mares
"z". I've added an argument specifying name of the variable. Renamed "again" label in FIB_ITERATE_* to "fis_again" to avoid name clashes.
1999-02-13config->router_id works again.Martin Mares
1999-02-11Real implementation of protocol state machines. Delayed startup/shutdownMartin Mares
should work now. Initial feeding of protocols by interfaces/routes is done from the event queue to prevent unwanted recursion.
1999-02-11Run the event queue before writing SIGUSR dumps.Martin Mares
1999-02-11struct proto again contains instance name (a copy of proto->cf->name).Martin Mares
1999-02-11Grrr, forgot to commit the event routines themselves :|Martin Mares
1999-02-11Added simple event scheduling system to avoid recursive callingMartin Mares
of various callbacks. Events are just another resource type objects (thus automatically freed and unlinked when the protocol using them shuts down). Each event can be linked in at most one event list. For most purposes, just use the global event list handled by the following functions: ev_schedule Schedule event to be called at the next event scheduling point. If the event was already scheduled, it's just re-linked to the end of the list. ev_postpone Postpone an already scheduled event, so that it won't get called. Postponed events can be scheduled again by ev_schedule(). You can also create custom event lists to build your own synchronization primitives. Just use: ev_init_list to initialize an event list ev_enqueue to schedule event on specified event list ev_postpone works as well for custom lists ev_run_list to run all events on your custom list ev_run to run a specific event and dequeue it
1999-02-08Propagate depend into all subdirectories; make rip compile afterPavel Machek
latest mj's changes.
1999-02-05Synced Linux sysdeps to new interface.Martin Mares
1999-02-05Synced kernel interface to new interface.Martin Mares
1999-02-05Modified static router to use new interface.Martin Mares
1999-02-05Implemented new configuration/reconfiguration interface and defined protocolMartin Mares
state machines. Full explanation will follow soon.
1999-02-05Added several parentheses to MIN/MAX macros.Martin Mares
1999-02-03Few fixes in parsing of filtersPavel Machek
1999-01-23Replaced the old ugly ipv6 compilation hack by a conditional in Modules.Martin Mares
1999-01-23Filter all `Modules' files through C preprocessor, so that they canMartin Mares
reference BIRD configuration. By the way: Do you know GCC by default does `#define unix 1'?
1999-01-15filters_init() renamed to filters_postconfig().Pavel Machek
1999-01-15Original `expr' is back, filter expressions renamed to `term'.Martin Mares
In the future, we'll allow any filter term in place of `expr' and we'll just evaluate it immediately, but not now as we have no evaluation routines.
1999-01-15Added bird.conf to .cvsignore and created an example configuration file.Martin Mares
If you want to run bird now, just copy doc/bird.conf.example as bird.conf and edit it to suit your needs.
1999-01-15Killed duplicate %type for expr.Martin Mares
1999-01-15Make filters actually compiled.Pavel Machek
1999-01-15Filters, second try. This time they have their own directory.Pavel Machek
1999-01-15Propagate "depend" target to real top-level Makefile.Martin Mares
1999-01-15#if 1 that creeped into cvs killed.Pavel Machek