summaryrefslogtreecommitdiff
path: root/include/inspircd.h
AgeCommit message (Collapse)Author
2007-10-28- Tear out a useless load of XLine clutters that did nothing much except ↵w00t
confuse things - Revert back to early 1.0 design of using a single list for line storage. We'll make this work more efficiently than 1.0 though of course. This simplifies the code for expiry, checking, etc. - Merge a bunch of sort callbacks into a single sort callback for class XLine. - Horribly break apply_lines() for the time being. .. and that's probably it. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8398 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23More pedantic safetybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8318 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23-pedantic tidyups, lets see if it finds anything worthy of a fixbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8313 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-22Remove a wrapper, it's easy to read as is :pw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8300 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Remove next_call garbage.. It didn't really do much more than obfuscate ↵w00t
things. InspIRCd::DoBackgroundUserStuff() is now called once per second, roughly. This will (of course) not be going into 1.1.x git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8241 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15InspSocket -> BufferedSocket. Paves the way for a SimpleSocket class which ↵w00t
ident etc will use. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8206 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-10-15In the grand tradition of huge fucking commits:w00t
- chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15class command_t -> class Command. Whey :Dw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8203 e03df62e-2008-0410-955e-edbf42e46eb7
2007-09-26Fixed bug #404; this was caused by recieving multiple OPERTYPEs from a ↵special
remote server, which eventually resulted in bad pointers inside the all_opers list git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8084 e03df62e-2008-0410-955e-edbf42e46eb7
2007-09-23Remove InspIRCd::DoOneIteration, throwback to software threading (lulz)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8065 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-31This may not compile, I'll test it on my desktop. Waiting 20 minutes for a ↵w00t
build is unacceptable. - Move UUID initialisation to InspIRCd::InitialiseUID() - Call it if we run out of existing UUIDs - Call it on startup Just a small cleanup. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8007 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28Move everything module-related out of InspIRCd and into ModuleManager, there ↵om
is a ModuleManager instantiated as InspIRCd::Modules. Several of the function names have changed slightly as well. e.g. Instance->FindModule(m_foobar.so); is now Instance->Modules->Find(m_foobar.so); All modules in the core distribution should also be updated in line with these changes. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7985 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28Document the need for the fake clientw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7944 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28Oops. This is supposed to be a public memberw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7939 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28Add a global fake client to class InspIRCd used instead of instantiating a ↵w00t
fake client every time a mode needs to be forced through, etc git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7938 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Add FindNickOnly, that wont fall through to uid checks if isdigit(*first). ↵brain
We may need this. (i thought we did for this fix, we dont) Fix cmd_nick to not treat all nicks as invalid and make the client give up. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7883 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Allocate uid in userrec constructor. Optional param added, if its empty, the ↵brain
server allocates one, if its not empty the user gets the one given (this is used for remote users) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7873 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Add InspIRCd::FindUUID() methods. Currently, these work off an iteration ↵w00t
around the whole client list. This sucks, and will be changed to a map the same as FindNick(). Also update FindNick's docs a little out of anal habit: it returns a user, not a nick. :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7855 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-26Add skeleton functions for UID stuff.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7845 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23Raft of fixes so that inspircd can call Cleanup() and Exit() in less ↵brain
'stable' circumstances, e.g. when half initialized, and it wont segfault. Also fix OpenLog to not always exit on error, but to return a bool instead, which is much more friendly on rehash (you don't want /REHASH dieing your server if you cant write the log!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7804 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-09Remove an un-needed define while I poke around in herew00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7693 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27Move a bunch of stuff around for tidyness, win32 functions keep creeping ↵brain
into #ifdef'ed chunks in non-win32 files git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7588 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-26Move a ton of stuff into caller* functorsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7578 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25Un-static InspIRCd::Exit and use SignalHandler instead.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7572 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25Rehash from console works again due to new signalhandler. TODO: Use this to ↵peavey
catch SIGTERM and exit cleanly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7571 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25Shorthand macros DEFINE_HANDLER1()...DEFINE_HANDLER9() to save on defining ↵brain
functor classes that just implement Call() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7569 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25Turn IsIdent into a functorbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7568 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25Add stuff for functors. Currently, as a test case only InspIRCd::IsNick has ↵brain
been 'functorized' git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7564 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25Begin move of rehash to server.cpp - broken rehash from cmdline for now.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7563 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25Put FileLogger in it's own class. Useful when logging doing more focused loggingpeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7561 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-24Replace some voodoo with a definew00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7556 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-24And remove it from the header..w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7543 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23Fix crash on unload of modules with listening sockets -- some situations ↵brain
require that the socket cull list is purged *immediately*, provide facility for this. Also squish some silly error output on unloading spanningtree. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7529 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-06-17Comment stuff that lacks itbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7378 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-14Some general syntax cleanups.pippijn
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7304 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-05Sexeger!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7241 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-05Refactored InspIRCd::Duration(). The leetcode now lives!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7237 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-04Excess flood tidyupsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7230 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-21I think this was the source of burlex's confusion with the spanningtree ↵brain
propogation bug and a warning in vc8 -- CallCommandHandler returned BOOL?! Yet its casting that bool somehow from a CmdResult. It should be CmdResult. Fixed. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7101 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19Space indents must die.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7049 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19Windows support. Tested and working to compile on freebsd and linux. Next ↵w00t
step is to make sure it actually works in windows too. ;p. Add Burlex to contributors. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-11Remove some stuff deprecated since 1.0w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6985 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-11Refactor port binding, warning not yet tested fullybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6982 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-26Make error reporting work properly, it seemed to loose errors.brain
First change: Add a culling list of inspsockets waiting to be closed, so the close() is less likely to be called before the buffer is entirely empty. This seems to work well on my LAN. Second change: Add a SendError() method, rather than WriteLine("ERROR : ..."). This can be used to effect by also echoing out "Sent ERROR to %s: ..." onto the +l snomask meaning at least one end will always see the error even if the ERROR command is lost due to latency or design of the transport (e.g. ssl which may be writing during a read event etc) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6844 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-06We had to roll our own time function because some craqsmoker thought having ↵brain
a carriage return on the end of ctime and asctime was a great idea, and the only other solution is to fanny around with strftime. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6749 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-05Fix for bug #199 (Feature request) submitted by owine. Ended up adding an ↵brain
extra parameter to <uline> for this. It turned into a biggie :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6742 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-01Add -config parameter to bin/inspircd which allows a user to specify the ↵brain
config file on the commandline Note: This should really be a full pathname, and not a configuration file in the current directory. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6726 e03df62e-2008-0410-955e-edbf42e46eb7