summaryrefslogtreecommitdiff
path: root/src/users.cpp
Commit message (Collapse)AuthorAgeFilesLines
* nuke some debug (snatch)Gravatar peavey2008-05-091-6/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9685 e03df62e-2008-0410-955e-edbf42e46eb7
* Masterful rewrite of User::AddBuffer to remove a string copy (and make more ↵Gravatar w00t2008-05-071-21/+53
| | | | | | efficient) thanks to some nifty string manipulations. This should provide benefit on highly loaded nodes. This has *not* been thoroughly tested considering it's criticality, but I have spent the past ~4 hours writing and testing it, and it seems ok. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9661 e03df62e-2008-0410-955e-edbf42e46eb7
* Conversion of command handler params from "const char* const* parameters, ↵Gravatar brain2008-05-041-5/+10
| | | | | | | | | | int pcnt" to "const std::vector<std::string>& parameters". All of core is converted, but cant test it till the modules are converted. IMPORTANT: The mode parser public calls have had to be tweaked a bit to also use the string vector. Note that this makes a LOT of our core a bit messy and paves the way to convert a lot of stuff from the mess of .c_str() calls to using std::string params directly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9608 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove debug (This also fixes a bug that peavey and i found regarding the ↵Gravatar brain2008-04-211-14/+1
| | | | | | already_sent not being wiped properly on first use) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9576 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix bug found by peavey, which much frustrated him and w00t. He leiks ↵Gravatar brain2008-04-211-3/+17
| | | | | | mudkipz. Also fix bug #522 reported by Casey git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9575 e03df62e-2008-0410-955e-edbf42e46eb7
* char -> const charGravatar w00t2008-04-131-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9485 e03df62e-2008-0410-955e-edbf42e46eb7
* Trunk fix for bug #505 reported by nenolodGravatar brain2008-04-121-18/+20
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9468 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix silliesGravatar brain2008-04-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9457 e03df62e-2008-0410-955e-edbf42e46eb7
* Patch from Brain fixing broken stuffGravatar w00t2008-04-111-4/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9456 e03df62e-2008-0410-955e-edbf42e46eb7
* Much faster way of checking if the user is 4in6, avoid strncmp in ↵Gravatar brain2008-04-111-2/+4
| | | | | | User::GetIPString(), do it in User::SetSockAddr() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9455 e03df62e-2008-0410-955e-edbf42e46eb7
* Provide an optional param translate4in6 to User::GetIPString() and default ↵Gravatar brain2008-04-101-2/+8
| | | | | | | | | it to true. This hides the 0::ffff: on all info about an ipv6 user connecting over ipv4, making glines on them and bans etc work better. Certain parts such as dns lookup need to set this to false to determine wether to use ipv4 or ipv6 reverse lookup. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9454 e03df62e-2008-0410-955e-edbf42e46eb7
* Move QuitUser into UserManager class, and unstaticize it. This prepares for ↵Gravatar w00t2008-04-091-20/+5
| | | | | | some benchmarking lulz on object pooling I plan to do today, as well as making more sense now we *have* a manager class git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9442 e03df62e-2008-0410-955e-edbf42e46eb7
* Don't check Q:Lines here, it will affect change to UIDGravatar w00t2008-04-081-6/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9435 e03df62e-2008-0410-955e-edbf42e46eb7
* This should probably be tested, but makes a whole lot more sense like this ↵Gravatar brain2008-04-071-32/+21
| | | | | | (users.cpp) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9404 e03df62e-2008-0410-955e-edbf42e46eb7
* Initialise this so WriteCommon() knows what it's dealing with (thanks, valgrind)Gravatar w00t2008-04-061-1/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9387 e03df62e-2008-0410-955e-edbf42e46eb7
* Make sure this is pushed tooGravatar brain2008-04-051-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9352 e03df62e-2008-0410-955e-edbf42e46eb7
* Use 1.2, not VERSION constant for here.Gravatar w00t2008-04-051-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9350 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix a (long standing) tiny bug: wallops do not go out to all +w users, only ↵Gravatar w00t2008-04-031-1/+4
| | | | | | opered users. This needs applying to 1.1 too, will be done shortly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9285 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix brain's compile error :pGravatar w00t2008-04-021-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9282 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for bug #456 so we can be rid of itGravatar brain2008-04-021-2/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9281 e03df62e-2008-0410-955e-edbf42e46eb7
* Automatic detection and allocation of max fds. No longer needs recompile to ↵Gravatar brain2008-04-021-1/+18
| | | | | | | | | change, just adjust it in your kernel or whatever and restart insp. Please note that select and iocp socket engines do not support detection and are always set to FD_SETSIZE and 10240 descriptors respectively. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9263 e03df62e-2008-0410-955e-edbf42e46eb7
* fix a few warnings by casting since thats the only way to be sure non native ↵Gravatar peavey2008-03-311-2/+2
| | | | | | C types matches their format tokens. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9239 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix two format warnings, dont you DARE tell me size_t varies in size too.Gravatar brain2008-03-311-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9235 e03df62e-2008-0410-955e-edbf42e46eb7
* Commit -Wformat=2 -Wmissing-format-attributes, printf-like functions in ↵Gravatar aquanight2008-03-301-6/+6
| | | | | | inspircd now get treated like printf (meaning compile-time check goodness) in GCC git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9217 e03df62e-2008-0410-955e-edbf42e46eb7
* Add stuff so that modules can hook users by altering a pointer in the User ↵Gravatar brain2008-03-241-2/+3
| | | | | | class. Note that ssl modules still bind by port, but the idea of doing this change is so we can remove that logic next git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9187 e03df62e-2008-0410-955e-edbf42e46eb7
* Clean up user/chan modes on deoper, fix memsets off-by-1, delete[] properly ↵Gravatar aquanight2008-03-231-6/+17
| | | | | | in destructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9182 e03df62e-2008-0410-955e-edbf42e46eb7
* These memsets cant rely on sizeof() any more, afaik. The sizeof() would give ↵Gravatar brain2008-03-231-4/+4
| | | | | | 4 or 8, size of the pointer :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9181 e03df62e-2008-0410-955e-edbf42e46eb7
* Whoops, take out some foolish memsets (well theyre foolish now :p)Gravatar brain2008-03-231-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9180 e03df62e-2008-0410-955e-edbf42e46eb7
* This should save 128 bytes per user for non-opers. Well worth it imho for a ↵Gravatar brain2008-03-231-0/+26
| | | | | | reasonably large amount of unused ram. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9179 e03df62e-2008-0410-955e-edbf42e46eb7
* Add ability to control what opertypes can set what operonly user/chan modes. ↵Gravatar aquanight2008-03-231-1/+38
| | | | | | This works the same way as commands, in that modes allowed by classes are added together, and * allows all. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9176 e03df62e-2008-0410-955e-edbf42e46eb7
* Wheeee for HUGE commits. Convert all numerics to WriteNumeric so that ↵Gravatar brain2008-03-221-16/+16
| | | | | | OnNumeric can capture them. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9175 e03df62e-2008-0410-955e-edbf42e46eb7
* Add WriteNumeric() to User and OnNumeric module event. Note that modules do ↵Gravatar brain2008-03-221-0/+26
| | | | | | not change the numeric text on the fly, as this involves needless allocations for numerics that arent being changed, so instead they block the original numeric and send out their own when needed. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9174 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for bug #466 reported by JohnGravatar brain2008-02-261-2/+18
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9042 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for feature request in bug #465 by JohnGravatar brain2008-02-261-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9041 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert remaining InspIRCd::Log() calls to new logging systemGravatar aquanight2008-02-221-9/+9
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9001 e03df62e-2008-0410-955e-edbf42e46eb7
* Nuke TIMESYNC from orbit \o/Gravatar w00t2008-02-221-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8998 e03df62e-2008-0410-955e-edbf42e46eb7
* The issue from stable does not exist here, because we initialize ↵Gravatar brain2008-02-211-1/+1
| | | | | | userrec::quietquit to false in QuitUser (we didnt in stable) however it makes sense to also init this in the ctor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8974 e03df62e-2008-0410-955e-edbf42e46eb7
* Seperate USERIO into USERINPUT and USEROUTPUTGravatar brain2008-02-171-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8949 e03df62e-2008-0410-955e-edbf42e46eb7
* Commit patch from danieldg that makes a ton of stuff const-safe for latest ↵Gravatar brain2008-02-131-1/+1
| | | | | | warn-happy trigger-happy gcc4 (thanks) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8922 e03df62e-2008-0410-955e-edbf42e46eb7
* Backport r8910: oper quit message would be blankGravatar w00t2008-02-121-1/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8911 e03df62e-2008-0410-955e-edbf42e46eb7
* Add -Wshadow to cflags, and fix a bunch of warnings that come with it. Add a ↵Gravatar w00t2008-02-111-17/+17
| | | | | | note to webirc that needs looking at. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8892 e03df62e-2008-0410-955e-edbf42e46eb7
* Add a printf-type override for LogManager::Log(). We need to find a way to ↵Gravatar w00t2008-02-091-192/+126
| | | | | | see if a log call would have any interest, to avoid unnecessary printf() here though. Convert a bunch of stuff to using new logging (added targets: USERS, USERIO) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8860 e03df62e-2008-0410-955e-edbf42e46eb7
* Support for /invite <user> <channel> <timeout> - if the user doesn't partake ↵Gravatar aquanight2008-02-081-5/+40
| | | | | | in <timeout> time, the invite expires git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8854 e03df62e-2008-0410-955e-edbf42e46eb7
* This makes more senseGravatar brain2008-02-051-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8837 e03df62e-2008-0410-955e-edbf42e46eb7
* Brain, look at this pleaseGravatar w00t2008-02-041-14/+22
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8817 e03df62e-2008-0410-955e-edbf42e46eb7
* Cache User::GetIPString()Gravatar w00t2008-02-021-0/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8795 e03df62e-2008-0410-955e-edbf42e46eb7
* Move some stuff to usermanager, remove a little header insanity, remove ↵Gravatar w00t2008-02-021-14/+14
| | | | | | trace because it's still less useful than a chocolate fireman. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8790 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix.. snomask O is already taken (ffs) so use A insteadGravatar w00t2008-01-171-5/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8729 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove InspIRCd::WriteOpers in favour of snomask OGravatar w00t2008-01-171-6/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8728 e03df62e-2008-0410-955e-edbf42e46eb7
* Add a warning about quitting a user twice, and fix a minor brainfartGravatar w00t2008-01-161-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8718 e03df62e-2008-0410-955e-edbf42e46eb7