summaryrefslogtreecommitdiff
path: root/src/users.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove duplicated member, kept in classes.. Possible now we have a pointer. ↵Gravatar w00t2008-07-211-7/+0
| | | | | | this saves (another) 4 bytes per user. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10064 e03df62e-2008-0410-955e-edbf42e46eb7
* Change modes in channels and users to use std::bitset instead of an array. ↵Gravatar w00t2008-07-191-2/+0
| | | | | | This saves 56 bytes per channel, and 112 bytes per channel, with no loss in speed or ease of use in code. :). Thanks (VERY) much to Special for telling me about this. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10043 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix compile. Also remove write error stuff, as that was used prior to the ↵Gravatar w00t2008-07-191-85/+45
| | | | | | goodness of global culllist. This makes getting user's quit messages to them (on excess recvq etc) much easier. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10042 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove unneccessary temp value which caused a win32 problem by using ↵Gravatar om2008-07-141-4/+3
| | | | | | uint32_t type. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10021 e03df62e-2008-0410-955e-edbf42e46eb7
* More broken compile stuffGravatar w00t2008-07-141-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10016 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert, convert, convertGravatar w00t2008-07-131-9/+9
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10009 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert a bunch of crapGravatar w00t2008-07-131-6/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10008 e03df62e-2008-0410-955e-edbf42e46eb7
* Change sprintf to snprintf, just in case; Update comments.Gravatar om2008-07-121-3/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9985 e03df62e-2008-0410-955e-edbf42e46eb7
* Increase static buffer size to 44 to account for a full IPv6 CIDR mask: ↵Gravatar om2008-07-121-3/+3
| | | | | | 1111:1111:1111:1111:1111:1111:1111:1111/128 + null terminator. Also remove newlines in returned mask. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9984 e03df62e-2008-0410-955e-edbf42e46eb7
* Cleanup of some of the new CIDR code: compiles but untested; Also: My first ↵Gravatar om2008-07-121-59/+57
| | | | | | commit for a very long time git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9979 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for #564Gravatar w00t2008-07-121-3/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9961 e03df62e-2008-0410-955e-edbf42e46eb7
* Add User::GetCIDRMask(int range), will be used for CIDR throttling, etc. ↵Gravatar w00t2008-07-121-5/+108
| | | | | | Also probably opens up the way for /gline nickname to place CIDR bans instead of regular bans, which could be helpful. Much thanks to Om for his help. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9959 e03df62e-2008-0410-955e-edbf42e46eb7
* Back out the incomplete linebuffering stuff that shouldn't have been committed..Gravatar w00t2008-07-021-139/+67
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9948 e03df62e-2008-0410-955e-edbf42e46eb7
* Forward port r9946: make SVSHOLD silent to avoid useless irritation to opersGravatar w00t2008-07-021-67/+139
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9947 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix compile errorGravatar brain2008-06-061-2/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9841 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove limits on assigning of oper types. Theres no practical reason to ↵Gravatar brain2008-06-011-1/+1
| | | | | | restrict these to nicklen length git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9831 e03df62e-2008-0410-955e-edbf42e46eb7
* Add ProtocolInterface::Introduce() to prevent confusion over event ordering, ↵Gravatar brain2008-06-011-0/+2
| | | | | | and allow for more flexible protocol use git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9827 e03df62e-2008-0410-955e-edbf42e46eb7
* First phase of conversion to dynamic limits on all the lengths, configured ↵Gravatar brain2008-05-251-3/+3
| | | | | | | | | via the <limits> tag (the tag isnt there yet, these all just run on defaults in the class constructor) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9802 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix uuid generation to not generate ten character uuids, thanks nenolodGravatar brain2008-05-231-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9793 e03df62e-2008-0410-955e-edbf42e46eb7
* Why are we using .compare() when we can use == ?Gravatar brain2008-05-231-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9791 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert channel::name to std::string, this was a beastie!Gravatar brain2008-05-191-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9770 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert connection::hostGravatar brain2008-05-191-6/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9768 e03df62e-2008-0410-955e-edbf42e46eb7
* Make User:: nick/ident/dhost/fullname and some other things std::string ↵Gravatar aquanight2008-05-181-76/+69
| | | | | | instead of char*/char[] (MODULES DO NOT COMPILE) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9748 e03df62e-2008-0410-955e-edbf42e46eb7
* This conflicted a few hours ago apparantly (????)Gravatar w00t2008-05-181-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9747 e03df62e-2008-0410-955e-edbf42e46eb7
* check for GetDisabled should be before the match() commands, because its not ↵Gravatar brain2008-05-181-8/+8
| | | | | | worth wasting cpu time on match if its disabled anyway git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9741 e03df62e-2008-0410-955e-edbf42e46eb7
* Show count of total num of classes, for JasonGravatar w00t2008-05-181-0/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9740 e03df62e-2008-0410-955e-edbf42e46eb7
* I dont know who said we keep going when we get a match, because thats just ↵Gravatar brain2008-05-181-1/+2
| | | | | | silly. we stop at the first connect block that matches all critera of the connection. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9738 e03df62e-2008-0410-955e-edbf42e46eb7
* More debug for JasonGravatar w00t2008-05-181-2/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9736 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove some unneccessary .c_str() callsGravatar brain2008-05-181-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9734 e03df62e-2008-0410-955e-edbf42e46eb7
* Debug logging for connect class match failureGravatar w00t2008-05-181-1/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9733 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix bug found in <connect> code, <connect:limit> was checked after finding a ↵Gravatar w00t2008-05-181-23/+36
| | | | | | class that matched, not during - meaning that if they were locked out by <connect:limit>, they were given no second chance to be matched by a future <connect> (and that <connect> deny would not apply to them if necessary etc). Also tidy this up a *lot*, remove some of the nesting by (ab)using looping. This is a lot more understandable for me now. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9732 e03df62e-2008-0410-955e-edbf42e46eb7
* 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