summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/timer.c
AgeCommit message (Collapse)Author
2010-10-24spacing and irrelevant glitches which disrupt lintTheo de Raadt
2009-01-21timer_nextduein returned crap. fix it. so obvious... how could that happen.Henning Brauer
found out the hard way by Marc Runkel <MRunkel@untangle.com>
2008-06-11use monotime instead of wallclock.Henning Brauer
makes us independent from system time changes. diff from japan,was hiding... ok claudio some time ago
2008-05-08timer_due is not needed any moreHenning Brauer
2008-05-08KNFHenning Brauer
2008-05-08take advanatge of the timewheelin timer_nextduein - we just need to lookHenning Brauer
at the first one
2008-05-08we can stopin timer_set if new timeout equals the oldone.Henning Brauer
matters for stuff like the HoldTimer that gets reset often
2008-05-08take advantage of the timewheel: instead of checking each an everyHenning Brauer
timer, just get the first off the queue and check wether it is due
2008-05-08in timer_set, when figuring out the right position for the timer,Henning Brauer
wemust stop walking the list once werun into a stopped timer, or eventually all stopped timers will queue up at the very front (instead of at the tail)
2008-05-08change timer internals so that we use a timewheel (tailq, sorted by expiryHenning Brauer
so that the timer that will expire first is always the first element, and so on). will make the checking a bit faster and moreelegant and more conveniant. ok claudio
2007-12-23provide timer_nextduein, which provides the number of seconds until theHenning Brauer
next timer expires. use that in the session engine's mainloop, which simplifies it and removes the last bits of timer internals knowledge from anywhere outside timer.c.
2007-12-23send timers for bgpctlshow neighbor foo timer in seperate messages afterHenning Brauer
the peer data. makes bgpctl display code independent from timer implementation internals. only running timers are displayed now, stopped ones are skipped.
2007-12-23make all timer_get() callers (except timer_set which will needHenning Brauer
special handling) and onein session.c that will go away able to cope with timer_get() returning NULL (i.e.nosuch timer/not running)
2007-12-20rework timers.Henning Brauer
stop changing tienmr values directly, always use new timer_(get/set/stop/running) functions. preparation for more to come :) ok claudio