summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2006-07-16MAJOR tidy of line parser, some parts rewritten and major chunks removedbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4402 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16const the std::string reference in tokenstream's constructorom
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4400 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
2006-07-16irc::tokenstream is a token parser which using std::string and std::vector ↵brain
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
2006-07-15Removed GCC2 checks as we havent supported gcc2 for yearsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4394 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-143.3 -> 3.4 fix (the 3.3 stuff was actually craq)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4393 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-14Add <options:nouserdns> - defaults to off. if set to on, no user dns lookups ↵brain
are performed, saving resources git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4386 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-14Rollback dns changebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4384 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-14Fix dns socket leak found in stablebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4383 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12Tiny tiny docs update, not even worth re-generating the docs for atmbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4370 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12Document class Resolverbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4369 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12Make it work:brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4357 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12Test framework in m_testcommand, add interfacebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4354 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12Added class Resolver (needs testing)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4353 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-11Add single parameter versions of Extensible::Extend and Extensible::GetExt ↵om
for storing boolean values, seckshayer git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4324 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-11Move openSockfd[] into ServerConfigbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4322 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10ContentSize speedupsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4316 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Add FileReader::ContentSize and FileReader::Contentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4314 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Try to make this serve some static contentbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4308 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Update docs to indicate new templated GetExt and Extend, remove references ↵brain
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
2006-07-10Take out broken idbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4305 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Aaaand, fix the typobrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4304 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Added refcount to classbase, static classbase::idbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4303 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10I made a Boo Boo :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4301 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Deps weedingbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4300 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Inherit just about everything from classbasebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4299 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Inherit tons of stuff from classbase that should always have beenbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4298 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Sort deps of base.hbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4295 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Sort include dependencies of dns.hbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4294 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Made a load more stuff Extensible which might be of use to someonebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4293 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Properly set the resulting pointer to NULL when the object isnt foundbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4292 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10If you ask me, it looks a hell of a lot tidier without forcing the cast.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4277 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10- userrec::ProcessNoticeMasks - provide a way to set or unset masks.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4276 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10- Add usermode +n for notice masks - our implementation of snomasks. We're ↵w00t
not sure how this will tie in with +s yet. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4274 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10-Clone mode methods into notice mask methods for userrec.w00t
- Modify userrec to add char [] of notice masks, works in the same function as modes. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4273 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Add empty snomasks.cpp (still got to add headers here so the build doesnt ↵brain
barf on the empty file?) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4270 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Add interface to AddModeWatcher and DelModeWatcher into class Serverbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4267 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10Added ModeParser::AddModeWatcher() and ModeParser::DelModeWatcher()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4266 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Finally finished documenting new mode parser. Lots of comments.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4242 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Fix whoopsiesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4239 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Added Server::GetModuleName(), Module* to filenamebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4238 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Reorder to avoid warning.brain
We could make the autotidy stuff part of the 'check argument' virtual method in banexception and inviteexception at a later date? git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4237 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Altered u_listmode to have a constructor arg 'autotidy' which if set to true ↵brain
runs input through ModeParser::CleanMask() otherwise leaves it alone git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4236 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Alter SetModeParam to take const char* to save on casts, notice a load of ↵brain
modules that arent setting the param or the mode inside the handler git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4231 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Okay..updates to u_listmode, general cleanups and add some virtual methods ↵om
which subclasses can override to alter behaviour..all looking much nicer and more flexible now. Update m_chanfilter to use u_listmode, demonstrates most or all of the new features of it and looks a hell of a lot prettier :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4201 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-09Add a parameter to set what config tag to parse (defaults to what was ↵om
previously hardcoded); Some other cleanups using initialisation lists, and using a ConfigParser stack-allocated rather than keeping a persistent heap-allocated one; Remove hardcoded filename prefixes in log messages git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4200 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Did some renaming so that the methods for modes in chanrec and userrec are ↵brain
identical. bool IsModeSet(const unsigned char c); void SetMode(const unsigned char c, bool value); Fixed m_botmode for new api git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4194 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Port m_blockcaps to new api, remove OnExtendedMode and OnDisplayList events ↵brain
entirely git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4191 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Convert u_listmode and m_banexception to new apibrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4189 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08Remove Server::AddExtendedMode and Server::AddExtendedListMode, replace with ↵brain
Server::AddMode (makes more sense naming wise too as all modes are modes, all the same now) NOTE: Modules that implement modes WILL NO LONGER COMPILE NOW UNTIL THEY ARE PORTED TO THE NEW API git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4188 e03df62e-2008-0410-955e-edbf42e46eb7