summaryrefslogtreecommitdiff
path: root/src/timer.cpp
AgeCommit message (Collapse)Author
2013-04-21Timer changes and TimerManager enhancementsattilamolnar
Timer::Tick() now has a bool return value: if false is returned the timer is deleted using operator delete, otherwise, if it's a repeating timer then it's rescheduled (readded) Timers are removed from the TimerManager automatically at destruction Timers are now stored in a multimap instead of a sorted vector
2012-04-19Replace copyright headers with headers granting specific authors copyrightRobby-
2010-01-11...because every now and again, i have to do a massive commit.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Remove InspIRCd* parameters and fieldsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Valgrind cleanup: finish destructor creationdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11615 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-15Update all wiki links to point to the new wiki. This was done automatically ↵psychon
with the following command, only .Makefile.inc got some indent fixups by hand. for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-14Nuke trailing spacespeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7
2009-01-02Update copyrights for 2009.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-29Remove last vestige of libircdfoo, by changing tag into a single ↵w00t
identifier marking object as requiring compilation into a .o (minor commit) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10076 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-14Fix timer crashes: relying on an iterator after adding to/resorting the ↵w00t
vector probably isn't bright git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8929 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-13New timer code. This may be a tiny fraction slower (though I think it will ↵w00t
be acceptable given that we no longer need to tick old timers etc), but it is a lot simpler (about half the codesize of the old + no allocation of new timergroups etc), and should (I hope) always tick timers and never 'lose' them. Performs okay under 3500 connection attempts (0:00 CPU time :)) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8708 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-10Header update: 2007 -> 2008w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
2007-11-04Honking huge commit. Removal of DELETE() template that never worked right anywaybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8527 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-22Remove the need for a bunch of the hard coded arrays/hashes by scanning the ↵brain
src/ dir for tag comments, like in modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8307 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15InspTimer -> Timerw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8205 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵peavey
auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-10timermanager never had a ServerInstance. Give it one so we can use ↵brain
InspIRCd::Time() rather than time() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6561 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-10Remove dup code by calling TickTimers in a loopbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6560 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-10DELETE() on the timergroup in DelTimer (small memory leak)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6559 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-09Add and properly test the ability for an InspTimer to DelTimer itself from ↵brain
within its own Tick method. This wasnt supported before and would corrupt the iterator in the TickTimers() method of TimerManager. Non the less, peaveys new (perfectly sensible) fix broke it because i didnt document the caveat about DelTimer() :p This FIXES m_ident and possibly some other stuff. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6553 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-08Add repeating timers, and make an hourly prune of the dns cache, otherwise a ↵brain
cache entry might not be cleared until a user with that ip comes back! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6264 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15Jesus, look who's the commit whore today. More header updates, and removal ↵w00t
of namespacing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-15Add timeouts to the http module. Two seperate timeouts, 60 seconds to ↵brain
receive headers, and 60 seconds after receipt of headers and sending of page, in which to time out the connection if the client doesnt close() as it should git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5260 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-30Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include listsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Just to mess with om's head, remove helperfuncs.h from everywherebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Relocate timer stuff into TimerManager classbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4827 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-24delete operator tracking in debug mode (using a macro -- live with it.)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3904 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-11Remove an extern, partly because it's unused, partly because it then gets ↵om
shadowed by something else, but mostly because it confused the hell out of me :/ git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3870 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10Route some more stuff through socket.h and hash_map.h. Add #define ↵om
protection to timer.h and remove some unneeded includes and externs from timer.cpp git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3869 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08Remove references to inspircd_io from these, stop configure making all the ↵om
modules depend on it too. And remove some more un-needed includes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3853 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08Remove some unused headers and unneeded castsom
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3846 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-25Include tweaksbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3324 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23Decide that it wasn't quite appropriate :(om
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3314 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23Add entirely pointful smiley to commentom
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3313 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23Added commentbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3312 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23iTypo (like a typo, but with crazy blue sides)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3311 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23Look-behind for missed timers up to 2 minutes (if your ircd has hung for 2 ↵brain
minutes, or your clock drift is > 2 mins, you have bigger fish to fry, like dead network or TS split) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3310 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23Moved timer stuff from OnBackgroundTimer to InspTimer derivativebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3305 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23Fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3300 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-23First revision of new timer code, not in the makefile yet (so it wont build ↵brain
till im done) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3297 e03df62e-2008-0410-955e-edbf42e46eb7