Use right address for ripv6.
Cleanup in preparation for ipv6.
Fix of comment.
RIP: Set attribute class.
Removal of useless includes continues...
Use bsprintf() instead of sprintf().
Include "lib/string.h" instead of <string.h>. It should give us bzero()and other non-portable functions on all systems.
Cross-protocol issues solved better
Use neigh_connected_to in rip, and behave more correctlyw.r.t. whotoldme and nexthop.
I broke compilation. Sorry.
Split horizont done right.
Locks done better.
Minor change to make code more readable.
Rip now tries to lock interface.
Fixed fatal errors which caused segfault at startup.
Fixed fatal errors in rip which caused it not to send more than firstupdate.
Cleanup, mostly debugging messages.
Categorized TRACE messages in rip
Rip tracing: still need config hunk to set p->debug.
log() classes done right
Renamed EAF_INLINE to EAF_TEMP to make the name reflect the real meaning.
Adapted RIP to new interface flags. Pavel, please verify it's right.
Do not send empty packets in rip.
Output made prettier.
Separated `official protocol names' used in status dumps from name templatesused for automatic generation of instance names.
protocol->name is the official name protocol->template is the name template (usually "name%d"), should be all lowercase.
Updated all protocols to define the templates, checked that their configuration...
TODO entries and FIXME's.
Added hooks for show route.Fixed passing metrics around routing tables.
Fix timing and fix endianity in metrics.
Stupid bug (essentially while(1) loop) occuring sometimes during startof bird fixed.
Actually check sequence numbers.
md5 authentication seems to work.
Bugfixes: select right password for password authentication, do nottry to process authentication blocks as datablocks, make it possibleto add data at end of packet. Password authentication should actually work.
Triggered updates should now actually work. Fixed metric=16 -> time itout logic.
Fix timeouts. Triggered updates are not done, yet.
Commented out nexthop selection, see the comment.
Added timeout for routes (which means proper expiring of routes) addedfew fixmes.
FIXME's updated. One fixme is remaining for correct RIPv4. Wow.
Reject packets which are not authenticated.
Set correct nexthop on outgoing packets.
FIXME's for rip added.
Will we ever able to generate packets saying "route 220.127.116.11 using someone else"?
Changed syntax of ip_class_mask, the old one was stupid.
Untested IPv6 support added. I do not know if it compiles in IPV6 mode.
Obvious bugs in authentication fixed.
Few fixme's fixed in rip (will not crash any more on request forsending routing table - hopefully).
Next few steps in md5 authentication (not yet complete).
Defined IP_PREC_INTERNET_CONTROL and made all (well, both :)) protocolsuse it when creating sockets.
Set corectly destination address for RIP multicast. Broadcasting &multicasting rip actually works [broadcasting is kind of hard to turnit on, through].
Added FIXME: mode broadcast randombly corrupts memory.
Small cleaning and bugfixes.
Kill duplicity between rif and rif_patt.
Small fixes to rip.
Incoming side of authentication done but untested. Right handling offilters in rip.
Added extra argument to rt_update hook which contains a pointer to thetemporary attribute list.
Make rip use newly defined password lists.
Kill remaining master_table relics in KRT code.
Make all protocols pass routing table to rte_update and rte_discard.
Mensi updaty do ripu. Pridana passwd autentikace (netestovano).
I rewrote the interface handling code, so that it supports multipleaddresses per interface (needed for example for IPv6 support).
o struct iface now contains a list of all interface addresses (represented by struct ifa), iface->addr points to the primary address (if any)....
Updated filters: they now actually see IP/pxlen of net being filtered,gateway, and who told us, so they can do usefull jobs from now on.
SImplify code a tiny bit.
Removed TOS support. This simplifies many things a lot.
Added FIXME: If a strange interface appears, ignore it instead of onlywriting an error message...
Added everything protocols need to know about multiple routing tables,i.e. struct proto now contains field 'table' pointing to routing tablethe protocol is attached to. Use this instead of &master_table.
Modified all protocols except the kernel syncer to use this field.
Removed the `rta_same' hook since it's no longer needed (all protocolsneeding some local information should use extended attrs and cachedrta's).
Initialize pointers to functions so that code is actually alive.
Don't segfault on unknown interface.
Hopefully ended translating to new interface
More rip fixes (config data moved to struct rip_proto_config), stillnot tested.
Parameter order for the proto->if_notify hook was different in the includefile and different in reality. Decided to use the same order as we dofor proto->rt_notify (i.e., first new value and second the old one).
Pass new argument to FIB_ITERATE_END.
Propagate depend into all subdirectories; make rip compile afterlatest mj's changes.
Make it compile again (stupid makefiles!), make quiet option work(multicast/broadcast options are currently unimplemented).
Patterns expanded in the right way
Bird now uses fib structure instead of linklist.
log(), die() and bug() messages shound NOT contain trailing newlines.
Added #if 0 to rip_postconfig(), so that it doesn't crash whole daemonwhen RIP is unconfigured.
die() -> bug()
debug() -> DBG in rip.
Initial multicast support (can not work, but skeleton is there)
Rip now has configurable per-interface metric (please rewiev), and fewmore configurable parameters. To do that, union was added into iface_patt.
Infinity is now configurable ammount.
Fixed few misspellings and exported instance init as rip_init_instance().
RIP now includes notion of interface, and is correctly talking toitself on second host. Split horizont is broken.
RIP NOW actually talks to itself (workaround core bug: send datafrom other port than we receive at), few FIXME's added.
RIP now actually talks to itself.
rip should now correctly listen, but entries will not time out.
Rip: rip_rta_same added.
I prefer to have broken drivers than completely stupid ones...
Rip now uses main routing table properly: entries are stored directlyinto main routing table and we are relying on core to call our'scompare. That unfortunately broke garbage collecting (and probably...
RIP now somehow listens to main routing table (dont expect it to work)
Bird's info are now understood by ripquery.
Rip now includes code to reply, but it is currently broken.
Commiting RIP. RIP should somehow listen, will not reply. I needed tocommit it so that whole thing compiles.