aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* REMOTE STATS! WOOO AND YAY!Gravatar brain2006-07-303-7/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4596 e03df62e-2008-0410-955e-edbf42e46eb7
* Finish off /WHO (i think it covers everything). Now has a few extra optionsGravatar brain2006-07-281-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4581 e03df62e-2008-0410-955e-edbf42e46eb7
* Document <options:syntaxhints> and <options:nouserdns>Gravatar brain2006-07-281-0/+4
| | | | | | | Change syntaxhints to seperate RPL_TEXT (prefix SYNTAX) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4578 e03df62e-2008-0410-955e-edbf42e46eb7
* Tidyup message.cpp, remove some really old craq.Gravatar brain2006-07-281-3/+1
| | | | | | | | Improve tidiness of new common_channels function Add timeout value to blocking CleanAndResolve function git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4572 e03df62e-2008-0410-955e-edbf42e46eb7
* Change all references to voodoo numbers (7, 3 etc) to the new bitwise ↵Gravatar brain2006-07-281-0/+8
| | | | | | | | | constants for user->registered Change a lot of user->fd > -1 to use the IS_LOCAL() macro git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4569 e03df62e-2008-0410-955e-edbf42e46eb7
* Add support for syntax of commands in place of the text 'Not enough ↵Gravatar brain2006-07-2846-45/+50
| | | | | | | | | parameters' in numeric 461, where supported. To support this each derived class of command_t must set the value of command_t::syntax to a non-empty string. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4561 e03df62e-2008-0410-955e-edbf42e46eb7
* Change std::pair<bool,std::string> to neater typedef "ModePair"Gravatar brain2006-07-277-7/+16
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4557 e03df62e-2008-0410-955e-edbf42e46eb7
* Mode merging during FJOIN with ourts==theirts. Only +k and +l have ↵Gravatar brain2006-07-273-0/+21
| | | | | | CheckTimestamp methods atm, needs to be finished by me and TIDIED. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4556 e03df62e-2008-0410-955e-edbf42e46eb7
* commit remainder of new mode bouncing stuff for TS based modesGravatar brain2006-07-272-0/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4550 e03df62e-2008-0410-955e-edbf42e46eb7
* Add extra method to mode handler, ModeHandler::ModeSet().Gravatar brain2006-07-267-0/+24
| | | | | | | | | | | Returns a std::pair<bool,string>. if the bool is true, the mode is set, and the second item in the pair is the parameter set on it, if any If the bool is false, the mode is not set, and the parameter given is returned as the second item of the pair To be used in mode bouncing, to build a safe set of bounced modes (dont ask yet) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4549 e03df62e-2008-0410-955e-edbf42e46eb7
* Add an ID field to Request and a GetId() method, takes const char* and ↵Gravatar om2006-07-231-0/+22
| | | | | | returns it - Added new constructor to use it, all modules using ID should convert to the 'new' way of doing Requests, data is now theoretically depreceiated git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4529 e03df62e-2008-0410-955e-edbf42e46eb7
* Change stats recv/send to double, so they can hold truly massive numbers of ↵Gravatar brain2006-07-191-3/+4
| | | | | | | | | 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
* Change counters to unsigned long to prevent overflow to negative countsGravatar brain2006-07-191-11/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4449 e03df62e-2008-0410-955e-edbf42e46eb7
* Test changeGravatar brain2006-07-191-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4444 e03df62e-2008-0410-955e-edbf42e46eb7
* Add #include <sys/select.h> to select engine, we probably need itGravatar brain2006-07-192-0/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4443 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix typo in kqueue engineGravatar brain2006-07-191-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4440 e03df62e-2008-0410-955e-edbf42e46eb7
* * Seperate out socket engines into derived classes of SocketEngine.Gravatar brain2006-07-196-30/+165
| | | | | | | | | * 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
* Tried to implement sprintf that returns std::string of any size, realized it ↵Gravatar brain2006-07-181-2/+0
| | | | | | | | | would scale like unreal scales to ircnet (e.g. it wouldnt!) so took it back out. Moved chop() functionality into userrec::AddWriteBuf and make it nicer (no strlen) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4433 e03df62e-2008-0410-955e-edbf42e46eb7
* Document irc::commasepstream and irc::tokenstreamGravatar brain2006-07-161-0/+29
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4414 e03df62e-2008-0410-955e-edbf42e46eb7
* Created new class irc::commasepstream.Gravatar brain2006-07-162-1/+15
| | | | | | | | Will read comma seperated lists and works identically to irc::tokenstream It's re-entrant so we can run two of them together for JOIN git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4412 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix socket leak properly this timeGravatar brain2006-07-162-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4405 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix case sensitive commands issue due to new std::string based parser, ↵Gravatar brain2006-07-162-1/+16
| | | | | | 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
* mass tidyup, change A LOT of stuff to const char** which was char** (such as ↵Gravatar brain2006-07-1658-62/+62
| | | | | | | | | | parameters to commands in handlers) which makes the new lineparser work neater with no casts. This also removes tons of casts from other locations (all in all, ive added 2 casts and removed almost a hundred) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4403 e03df62e-2008-0410-955e-edbf42e46eb7
* MAJOR tidy of line parser, some parts rewritten and major chunks removedGravatar brain2006-07-161-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4402 e03df62e-2008-0410-955e-edbf42e46eb7
* const the std::string reference in tokenstream's constructorGravatar om2006-07-161-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4400 e03df62e-2008-0410-955e-edbf42e46eb7
* This should be faster, we read it like a stream now with GetToken until ↵Gravatar brain2006-07-161-4/+5
| | | | | | | | | 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
* irc::tokenstream is a token parser which using std::string and std::vector ↵Gravatar brain2006-07-161-0/+13
| | | | | | | | | | | | | | | | builds a list of tokens using irc parsing rules. e.g.: :arse PRIVMSG #chan :foo bar baz becomes a[0] = ":arse", a[1] = "PRIVMSG", a[2] = "#chan", a[3] = "foo bar baz". *** SOMEONE *** needs to optimize this or at least verify its neatness (without making it total craq and unreadable). Feel free to mess with my code. Any optimizations you make, run them against the COMMENTED OUT TEST SUITE at the top of main() in src/inspircd.cpp and ensure ALL output is the same with no crashes. (note: if you comment out and build with the test suite, all inspircd will do is output test data and exit!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4396 e03df62e-2008-0410-955e-edbf42e46eb7
* Removed GCC2 checks as we havent supported gcc2 for yearsGravatar brain2006-07-151-9/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4394 e03df62e-2008-0410-955e-edbf42e46eb7
* 3.3 -> 3.4 fix (the 3.3 stuff was actually craq)Gravatar brain2006-07-141-9/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4393 e03df62e-2008-0410-955e-edbf42e46eb7
* Add <options:nouserdns> - defaults to off. if set to on, no user dns lookups ↵Gravatar brain2006-07-141-0/+4
| | | | | | are performed, saving resources git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4386 e03df62e-2008-0410-955e-edbf42e46eb7
* Rollback dns changeGravatar brain2006-07-141-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4384 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix dns socket leak found in stableGravatar brain2006-07-141-0/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4383 e03df62e-2008-0410-955e-edbf42e46eb7
* Tiny tiny docs update, not even worth re-generating the docs for atmGravatar brain2006-07-121-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4370 e03df62e-2008-0410-955e-edbf42e46eb7
* Document class ResolverGravatar brain2006-07-121-1/+87
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4369 e03df62e-2008-0410-955e-edbf42e46eb7
* Make it work:Gravatar brain2006-07-121-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4357 e03df62e-2008-0410-955e-edbf42e46eb7
* Test framework in m_testcommand, add interfaceGravatar brain2006-07-121-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4354 e03df62e-2008-0410-955e-edbf42e46eb7
* Added class Resolver (needs testing)Gravatar brain2006-07-122-0/+32
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4353 e03df62e-2008-0410-955e-edbf42e46eb7
* Add single parameter versions of Extensible::Extend and Extensible::GetExt ↵Gravatar om2006-07-111-0/+34
| | | | | | for storing boolean values, seckshayer git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4324 e03df62e-2008-0410-955e-edbf42e46eb7
* Move openSockfd[] into ServerConfigGravatar brain2006-07-111-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4322 e03df62e-2008-0410-955e-edbf42e46eb7
* ContentSize speedupsGravatar brain2006-07-101-43/+48
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4316 e03df62e-2008-0410-955e-edbf42e46eb7
* Add FileReader::ContentSize and FileReader::ContentsGravatar brain2006-07-101-0/+8
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4314 e03df62e-2008-0410-955e-edbf42e46eb7
* Try to make this serve some static contentGravatar brain2006-07-101-58/+58
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4308 e03df62e-2008-0410-955e-edbf42e46eb7
* Update docs to indicate new templated GetExt and Extend, remove references ↵Gravatar brain2006-07-101-2/+4
| | | | | | to char* and void* pointers in here, and indicate how its now possible to store a NULL in Extensible :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4306 e03df62e-2008-0410-955e-edbf42e46eb7
* Take out broken idGravatar brain2006-07-101-3/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4305 e03df62e-2008-0410-955e-edbf42e46eb7
* Aaaand, fix the typoGravatar brain2006-07-101-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4304 e03df62e-2008-0410-955e-edbf42e46eb7
* Added refcount to classbase, static classbase::idGravatar brain2006-07-101-2/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4303 e03df62e-2008-0410-955e-edbf42e46eb7
* I made a Boo Boo :pGravatar brain2006-07-101-4/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4301 e03df62e-2008-0410-955e-edbf42e46eb7
* Deps weedingGravatar brain2006-07-101-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4300 e03df62e-2008-0410-955e-edbf42e46eb7
* Inherit just about everything from classbaseGravatar brain2006-07-104-5/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4299 e03df62e-2008-0410-955e-edbf42e46eb7
* Inherit tons of stuff from classbase that should always have beenGravatar brain2006-07-106-10/+14
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4298 e03df62e-2008-0410-955e-edbf42e46eb7