summaryrefslogtreecommitdiff
path: root/src/inspircd.cpp
AgeCommit message (Collapse)Author
2006-08-11Change to using Instance->Log (InspIRCd::Log) rather than log() macrobrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Now two types of log macro, log() and ilog(). log() assumes an InspIRCd ↵brain
object called ServerInstance, ilog() takes an InspIRCd object as first param. TODO: Run a regexp over these, using perl, to translate them into InspIRCd::Log calls and then eliminate the macro :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4879 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Move all of the xline stuff into class XLineManager, make an instance of it ↵brain
in class InspIRCd and use it (eliminates another extern) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4878 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Move whowas into InspIRCdbrain
Tidy up lowermap extern (for now, we cant do much but have this as extern) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4876 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Removal of an externbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4875 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11extern time_t TIME -> InspIRCd::Time()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4873 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Committing this as a rollback point - does not compilebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4860 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Note: FOR THE MOMENT, this is BROKEN. It wont run right until im done.brain
Changed Parameter for modules from Server* to InspIRCd*. TODO: Move remaining Server* Modules into InspIRCd* and remove class Server. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4859 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10So much stuff changed in this one, i forgot most of it.brain
Oh yeah, main thing is ModeHandler and ModeWatcher classes now take an InspIRCd* to their constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4858 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Mass-tidyup of module global vars, theyre no longer global vars.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4856 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move tons more stuff into class InspIRCd*, make signal handler functions ↵brain
static members git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4855 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move AllModulesReportReady into a private method of class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4851 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move FileExists, CleanFilename, DirValid, GetFullProgDir into class ServerConfigbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4848 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move IsNick, IsIdent into class InspIRCd, update modules that use it.brain
Change message.h to just a #warning saying its deprecated, and remove all use of it from the core :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Cast value to long instead of int, shouldn't break any sane system, fixes ↵om
warning on 64bit systems git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4841 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10FindNick, FindChan, ChanModes, UserList, CountInvisible, PurgeEmptyChannels, ↵brain
GetClass, WriteOpers, GetServerDescription -> into classes ServerConfig takes InspIRCd pointer in its constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4832 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10bad_alloc is thrown by reference not by valuebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4830 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Add a default exception handler around main()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4829 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move the socket functions like insp_ntoa into their own namespace. They ↵brain
arent really sensible to put into a class, but namespacing them out discourages developers from directly using them without explicitly saing 'using irc::sockets::BindPorts' or whatever first. Some functions such as insp_ntoa are already 'exposed' by headers that use them so 'using irc::sockets::inet_ntoa' isnt required. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4828 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-08-09Fix passing wrong instance to resolverbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4824 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Change some resolver stuff.brain
OM, THIS STILL WONT COMPILE! Error on the same line git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4821 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09userrec and chanrec now have their own independent pointer back to their ↵brain
'creator' InspIRCd* object, extern now longer required in channels.cpp or users.cpp git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4820 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Move tons more stuff into class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4819 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Move clientlist and chanlist into InspIRCd*brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4818 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Move fd_ref_table into class InspIRCd*brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4817 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Move socket_ref and module_sockets vectors/arrays into InspIRCd*. These are ↵brain
public members, which InspSocket can modify. (eventually, this will be marshalled safely through some accessors). When constructing an InspSocket you must now provide an InspIRCd* instance to 'attach' the socket to. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4812 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09ServerConfig extern moved into class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4808 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08Move whowas stuff into its own namespace, move more stuff into userrecbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4795 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08Extra checking that the fd's we pass to SocketEngine::AddFd were added (a ↵brain
lot of assuming was going off, leading to total chaos if we run out of fd's etc) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4780 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07Bail if we couldn't bind any ports (when did this get broken?)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4774 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07The segfaults on missing init_module symbol are now gone, and hopefully not ↵brain
coming back! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4772 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07Added some hax :( to prevent invalid symbols. It seems that instead of ↵brain
returning NULL, its setting a pointer to -1 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4770 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07Remove dependent commands BEFORE deleting the Module*, otherwise things go ↵brain
tits over arse git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4761 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06Syntax notice on bad commandlinebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4752 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06Add -notraceback startup option, disables automatic backtrace facility so ↵brain
that you can do it yourself with a coredump and gdb (auto backtrace doesnt dump cores) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4751 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06Support CIDR, CIDR zline, /oper and CIDR <connect> tags. NOTE: With CIDR ↵brain
oper, ident field is not supported (yet) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4732 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06Fix CIDR functions so they workbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4731 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04Extra debugbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4699 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Move more stuff into class DNSbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4651 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Comments, add more detail, remove dnsqueue.h include from tons of placesbrain
Remove THREADED_DNS defines from all over the place git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4629 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Stuff to make user host resolving use class Resolver - not tested yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4626 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Removed threaded dns (it might make a comeback some day, but as it stands ↵brain
its incompatible with the new OO resolver) Migrated to new OO resolver, removed as much firedns craq as is safe to do so, operates over one file descriptor now and keyed against request id. The only way to use the system is via class Resolver (so i'll need to migrate the rest of the ircd to use it) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4622 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01The IPV6 stuff compiles now, with compile-correct ipv6 code. I dont know if ↵brain
this works yet. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4611 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19Change stats recv/send to double, so they can hold truly massive numbers of ↵brain
transferred bytes (they would overflow after about 6 weeks on a busy net otherwise) Fix some warnings git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4450 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19* Seperate out socket engines into derived classes of SocketEngine.brain
* Add a classfactory SocketEngineFactory to create a new socketengine of the configured type * Implement configure hax to compile only the required socketengine and the base class * Eliminates ugly defines, and is more in line with C++ ways git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4439 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16Fix case sensitive commands issue due to new std::string based parser, ↵brain
improve the craq disabled commands check that was potentially O(n) where n is the number of disabled commands (erk) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4404 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16Disable test suitebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4399 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16Improved this a lotbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4398 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16This should be faster, we read it like a stream now with GetToken until ↵brain
GetToken returns "". The optimizations done by gcc means theres only one std::string constructor call per token, which is mmm yum. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4397 e03df62e-2008-0410-955e-edbf42e46eb7