summaryrefslogtreecommitdiff
path: root/src/users.cpp
Commit message (Expand)AuthorAgeFilesLines
* Added OnBufferFlush, improved m_safelist, no longer works on a timer but work...•••Seems to test fine with 500 reet bots all listing at once. (doesnt lock up the ircd while listing them all any more, either, just lags a small amount) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6657 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-03-111-0/+5
* This properly fixes options:hidebans and options:hidesplits by providing the ...•••There are default values on the oper_quit parameters through the entire source so that if oper_quit parameter is not given it defaults to the same as the user_quit git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6630 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-03-061-51/+27
* 1) Fix for nickname overruled with new cullList stuff -- we have to change th...•••2) Add a mute flag for users, so we can drop commands from users who have been placed on the cullList. This is independent of the actual cullList and can be used as a general mute flag e.g. by shun modules. 3) Fix /kill to also not quit the user immediately, remove need for CMD_USER_DELETED return anywhere in the code. *** THIS NEEDS TESTING BY QA *** git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6596 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-191-1/+8
* Change /msg $* to have the correct source the same way /notice $* does•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6588 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-171-2/+2
* Check for ::ffff:x.x.x.x ips in user resolver, and if we see one initiate an ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6550 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-081-2/+9
* "is now your hidden host" -> "is now your displayed host". Wording fits bette...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6549 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-081-1/+1
* Fix typo•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6505 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-051-1/+1
* Fix for allowing dns lookups to work in mixed protocol mode•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6504 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-051-3/+13
* Now working in svn:•••Client connections and port bindings on both ipv4 and ipv6 Server port bindings on both ipv4 and ipv6 Now broken due to this: cloaking (cloaks ipv4 users in an odd way when built as ipv6 enabled) DNS (query fd doesnt init properly) ...probably other stuff. Stay tuned. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6503 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-051-2/+2
* Not safe for use yet•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6502 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-02-051-2/+10
* Move quitting of clients to a central Cull List, and do quitting outside user...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6497 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2007-02-051-112/+44
* Debug the spoutmouth output•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6363 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-171-1/+5
* Make this more sensible•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6362 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-171-1/+1
* Log client output, so we can actually see what we're sending out, and make mo...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6361 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-171-0/+1
* Crusade to remove debug from stable and tested parts of the core and base mod...•••Most of the code here being de-noised hasnt had a crash or bug in it for many months, if not a year so the debug output is useless noise in the logfile when trying to trace a bug in a REAL problem area. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6356 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-151-26/+0
* Document dns caching, add a "bool cached" to OnLookupComplete method in Resol...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6254 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-071-2/+2
* DNS caching stuff (almost done)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6252 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-071-8/+2
* DNS Stuff - this wont work right yet, it will soon (tm)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6250 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-071-7/+15
* Move all /WHOWAS related out of core and into cmd_whowas.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6249 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2007-01-071-167/+6
* Add TTL stuff to dns system (pass it to inherited objects)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6247 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-071-1/+1
* Fix lusers breakage introduced by latest set of optimizations•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6219 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-031-1/+14
* SirOlli gets credit for this fix, because he was the only one willing to work...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6218 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-031-1/+1
* Fix for crash in desync of whowas lists on rehash. Also less mem leakage on a...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6217 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2007-01-021-35/+64
* Cache invalidation in the wrong place, fixes FHOST remote host change bug•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6187 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-311-4/+4
* Fix broken cloaking introduced by last commit (we need to invalidate the cach...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6181 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-301-7/+6
* Cached GetFullRealHost etc.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6179 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-301-9/+61
* Tweaks to instantiate less stuff when writing to a bunch of users•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6172 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-301-6/+13
* Tons of optimization of WriteChannel, WriteChannelWithServ, WriteCommon etc, ...•••Turns O(n) calls for every write into O(~1) calls per write. Remove some debug from the socketengines which makes debugging hard on large channels (write availability message) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6171 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-301-4/+14
* Add unregistered user counter, this may also fix the (minor) m_conn_lusers sh...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6170 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-301-1/+11
* Fix a bug in whowas that could desync list.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6091 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2006-12-241-2/+2
* Fix loop when quitting multiple users (this is probably whats eating cpu)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6084 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-241-3/+7
* Hash rehashing change•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6080 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-231-17/+18
* Remove useless debug•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6062 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-221-8/+0
* Refactor connect allow/deny lines•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6061 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-221-37/+32
* Proper fix for CS server crash, forgot to delete chanrec* from users chanlist...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6052 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2006-12-211-3/+1
* Crude hotfix to what's been crashing chatspike•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6051 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2006-12-211-0/+3
* When we handle a READ event on a user, return immediately.•••This is because the read event may remove the user, in which case the !empty and quituser check below will address invalid data! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6049 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-191-1/+1
* Add stuff so that the core catches CoreException properly•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6017 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-161-6/+6
* Jesus, look who's the commit whore today. More header updates, and removal of...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-151-7/+4
* Try harder to make sure the ERROR string gets sent when closing a connection•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5994 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-151-0/+4
* Cleaning up irrelevent stuff in channels.cpp•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5993 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-151-31/+11
* Remove misc debug•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5991 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-141-7/+0
* Fix silly bug of the day.•••User was only getting a userrec::chans entry added if they had any privelages on the channel. If they werent opped, voiced, or halfopped on join, no entry in the hash. Silly brain now added a: user->chans[Ptr] = 0; :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5990 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-141-4/+10
* Change how users are quit if they get a write error during the things they do.•••Instead of QuitUser inside FlushWriteBuffer() (potentially *UNSAFE*), go back to using SetWriteError(), but to ensure we dont get a cascade of bad write events from the socket engine, QuitUser the user before returning in userrec::HandleEvent, after we can gaurantee ALL other reading or writing is done. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5987 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-141-5/+15
* Refactor userrec::chans.•••Old way: A vector of ucrec, MAXCHANS in size by default populated by NULLS, so you have to scan the vector to find an empty slot when joining a user, parting a user etc New way: std::map<chanrec*, char> (the char holds their basic core permissions on the channel [voice, halfop, op]) This increases speed a ton, and removes some wtf-age. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5986 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-141-96/+50
* Refactoring:•••1) Chain together a resize and an append, to improve the buffer read efficiency 2) eliminate a const char* pointer by doing it purely with string, saving a data copy 3) use iterators rather than ints and vector::size() for spooling motd and rules files to users 4) change a usage of !length() to empty() to make it more readable git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5985 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-141-18/+9
* Improve the way 005 ISUPPORT is sent to users when they connect, cache it in ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5978 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-131-21/+2
* Improve how we handle ELINEs on connect, turn O(2n) into O(n) (thats the best...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5968 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-121-29/+8
* New clone counting mechanism (this isnt tested yet)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5967 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-121-32/+33
* Correctly handle write events•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5920 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-101-4/+4