summaryrefslogtreecommitdiff
path: root/usr.sbin/ospfd/lsupdate.c
AgeCommit message (Collapse)Author
2008-02-11Correct the output of several error and debug messages.Esben Norby
2006-06-02remove unused variable, found by lint.Esben Norby
2006-05-29Remove useless debug message that gets triggered all the time in big networks.Esben Norby
ok claudio@
2006-04-25Kill unused function and add a ARGSUSED.Claudio Jeker
2006-03-13The return value of the start/stop timer functions is almost never checked.Claudio Jeker
Switch them to void functions and check if evtimer_add/del fails -- in which case we fatal() as there is no useful way to recover in such an event. OK norby@
2006-03-08Spaces and other minor cleanup.Claudio Jeker
2006-02-23Rework the LSA cache and make it behave. Until now we only used the type,Claudio Jeker
id and adv router as hash and that resulted and weird behaviour. Because the age was not used in the compare it was almost impossible to MAXAGE some LSAs in busy networks. The result was a slowly growing retransmission queue and an ospf engine spending way to much time traversing these sometimes huge queues. Now we just hash the full lsa_hdr and so age is included. Additionally correctly age LSAs in the retransmission queues. ok ok ok ok ok ok and a lot of help (plus a busy OSPF network) norby@
2006-02-21Correctly count the number of LSAs in the retransmission list. OK norby@Claudio Jeker
2006-02-19Do not traverse the entire LS retransmission list to figure out how manyEsben Norby
are present on it. ok claudio@
2006-02-10ospfd does not need fd passing via the imsg framework so remove that codeClaudio Jeker
and remove other unneeded functions that are only used in bgpd.
2006-01-05Improve how ospfd copes with time changes.Esben Norby
ok claudio@
2005-12-29Instead of a simple timer per neighbor for the LS retransmition list useClaudio Jeker
a timewheel. All LSA updates are now first added to the queue and sent out later. This makes it possible to cluster multiple LSA updates into on OSPF packet. This gives a massive speedup when large databases need to be synced. Tested and OK norby@
2005-11-12spacing mostlyTheo de Raadt
2005-10-21htons() instead of ntohs() when going from host to network.Claudio Jeker
2005-10-21Revert part of rev 1.14. For now queue LSAs to all neighbors if the interfaceClaudio Jeker
is in state BACKUP or DR -- even to the DR. This causes unneeded retransmission of LSAs but solves a problem with self originated ones. The BDR was no longer capable to reliably flood self originated LSA. Better solution will follow. Reported by stevesk@
2005-10-19small cleanups while reading; ok claudio@Kevin Steves
2005-10-19fix some spellings in comments.Claudio Jeker
2005-10-19use string.h; ok claudio@Kevin Steves
2005-10-13Fix a memory leak in the ospf engine. First of all ospfd did not track if aClaudio Jeker
LSA was already queued on nbr self. So after the first round -- where the lsa was queued -- ospfd would remove it again in a second run. That was not enough but the LSA was removed from the wrong neighbor -- nbr instead of iface->self. LIST_REMOVE does not track the queue and so that resulted in some strangeness (especially the lsa_cache did not get cleared). OK norby@
2005-10-13Correctly queue ls updates on the retransmission lists.Claudio Jeker
First of all it is not clever to set queued before we actually queue something -- unless queued is set. If ospfd is running as BDR don't add updates to the retransmission list to the DR. OK norby@
2005-10-12Correct function name in warning.Claudio Jeker
2005-10-03typoMathieu Sauve-Frankel
ok claudio@
2005-05-26Remove unneeded debugging stuff when handling LS updates.Esben Norby
2005-05-26Simplify and cleanup passive interface handling.Esben Norby
ok claudio@
2005-04-05Use the dynamic buffer API for packet generation and sending.Claudio Jeker
OK norby@
2005-03-29The RFC never mentions anything about transfer, this should be transmit.Esben Norby
From Jason Ackley (thanks). ok claudio@
2005-03-22Remove bool cruft.Esben Norby
ok claudio@
2005-03-17Handle the retransmission queues correctly. Mainly iface state DROTHERClaudio Jeker
needs to be handled specially because the backup DR does not send acks and so his retransmission queue fills up and does not get cleared. Also implement the retransmission timeout correctly. OK henning@ norby@ deraadt@
2005-02-09mini KNFClaudio Jeker
2005-02-09If the router self is the originator of the LS update flood it outClaudio Jeker
no matter what. This solves an issue where self originated updates where not flooded because the router was the DR.
2005-02-02KNFHenning Brauer
2005-01-28Change my email address to the OpenBSD one since Ericsson has nothing toEsben Norby
do with this software, just happend to be my only valid email address at the time.
2005-01-28Welcome ospfdClaudio Jeker
started by Esben Norby some time ago by using the imsg/three process framework of bgpd. He implemented the basic concept plus the ospf finite state machines. Later I joined and helped him cleanup, debug and extend his work. Right now it is not particularly useful, major parts are still missing but is imported to allow more people to work on it. status: The basic protocol works for broadcast networks and the LS database is synchronized and updated. It is not possible to be DR or BDR on a network and other interface types like point-to-point are not yet supported. The shortest path tree is not calculated and so no routing information is exchanged with the kernel FIB. Not yet connected to the builds. OK henning@