summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
1998-11-27Trivial 15-line bison excercise: Implemented expressions includingMartin Mares
user-defined numeric symbols. Whenever possible, use `expr' instead of `NUM' to get full express ion power :-)
1998-11-27First attempt at protocol configuration (now done only for RIP).Martin Mares
1998-11-27Fixed few misspellings and exported instance init as rip_init_instance().Martin Mares
1998-11-27Added generator of default names.Martin Mares
1998-11-27Experimental config file.Martin Mares
1998-11-27Dummy grammar for RIP configuration. Now empty, but must be here sinceMartin Mares
it's referenced in the makefiles.
1998-11-27Parser fragment for the core. Now handles only router ID setting.Martin Mares
1998-11-27Compile and use the new configuration code by default.Martin Mares
1998-11-27Base of the parser.Martin Mares
1998-11-27Lexical analyser.Martin Mares
1998-11-27Replaced nest/confile.h by conf/conf.h, added a lot of new definitions.Martin Mares
1998-11-27This script takes configuration fragments and generates full Bison grammarMartin Mares
from them.
1998-11-27This script takes configuration fragments and extracts keyword listMartin Mares
from them.
1998-11-27Now merges configuration fragments (*.Y) as well.Martin Mares
1998-11-27Implemented ip_pton()Martin Mares
1998-11-27Removed prototype of rp_free() since this function has never existed.Martin Mares
1998-11-27Added path to config file.Martin Mares
1998-11-21Killed bug in processing of 'h' prefix. Patch taken from linux-2.1.129.Martin Mares
1998-11-16Complain loudly if the logging buffer would overflow.Martin Mares
1998-11-16Implemented snprintf and similar functions. It took a lot of thinking,Martin Mares
but the modifications were relatively simple and straightforward.
1998-10-26RIP now includes notion of interface, and is correctly talking toPavel Machek
itself on second host. Split horizont is broken.
1998-10-26Previous fix was wrong.Martin Mares
1998-10-26rte_update: Doesn't loop forever when multiple routes point to the sameMartin Mares
destination.
1998-10-20RIP _NOW_ actually talks to itself (workaround core bug: send dataPavel Machek
from other port than we receive at), few FIXME's added.
1998-10-20Learn static device routes from the kernel (temporary until we can makeMartin Mares
such things configurable).
1998-10-20RIP now actually talks to itself.Pavel Machek
1998-10-20Beware the NULL route, my son... The bugs that bite, the BIRDs that crash :-)Martin Mares
1998-10-20Insert/remove hooks return void, not int.Martin Mares
1998-10-20Added pointer to network to RTE. The complications with passing NET separatelyMartin Mares
aren't worth 4 bytes per RTE. rte_discard and rte_dump don't need net * as parameter.
1998-10-19Updated TODO.Martin Mares
1998-10-19Generate router_id automatically if possible (standard "smallest of localMartin Mares
regular interface addresses" rule). Protocols should NOT rely on router_id existence -- when router ID is not available, the router_id variable is set to zero and protocols requiring valid router ID should just refuse to start, reporting such error to the log.
1998-10-19Basic kernel routing table syncing implemented. Learning of routes installedMartin Mares
by other programs or the kernel itself is not supported yet, but it's not needed for development of other protocols.
1998-10-19Use (SOCK_DGRAM,IPPROTO_IP) socket instead of (SOCK_STREAM,IPPROTO_TCP).Martin Mares
This is exactly what Linux ifconfig does and seems to be the preferred way.
1998-10-19Exporting fill_in_sockaddr() for use by other unix-dependent code.Martin Mares
1998-10-19Fixed generation of device routes for unnumbered point-to-point links.Martin Mares
1998-10-19Proto struct now contain (down | starting | up) state.Martin Mares
1998-10-18We parse /proc/net/route and flag RT entries according to it. More to comeMartin Mares
today in the morning...
1998-10-18o FIB flags now available for FIB users.Martin Mares
o struct network: FIB flags used for kernel syncing. o struct network: `next' field deleted (historical relic).
1998-10-18Added ipa_from_u32 and ipa_from_u32 for use in the kernel sync code (IPv4 only).Martin Mares
Don't ever think of using it in routing protocols.
1998-10-18Since almost every UNIX system requires different techniques for readingMartin Mares
the kernel routing table as opposed to modifying it which is approximately the same on non-netlink systems, I've split the kernel routing table routines to read and write parts. To be implemented later ;-)
1998-10-18* Please distinguish between DGB() and debug().Martin Mares
1998-10-18Preconfig, postconfig and init hooks can be NULL.Martin Mares
1998-10-18Split protocol init to building of protocol list and real protocol init.Martin Mares
Added kernel route table syncer skeleton.
1998-10-18Removed global pointer to proto_dev.Martin Mares
1998-10-18After contemplating about RIP route timeouts for a long time, I've implementedMartin Mares
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.
1998-10-18Implemented `route last modified' time.Martin Mares
1998-10-17Fixed misleading comment.Martin Mares
1998-10-17Each protocol now hears even its own routes and needs to make its ownMartin Mares
loop detection. This is needed since both RIP and OSPF handle multiple neighbors and they need to redistribute routes learned from each neighbor to the remaining ones.
1998-10-17Solve chicken-and-egg problems with protocol startup. We now queue all inactiveMartin Mares
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-17WALK_LIST_DELSAFE now actually works (it really couldn't since it didn'tMartin Mares
reference list head at all).