summaryrefslogtreecommitdiff
path: root/src/users.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix spurious 'found host' messages after being told it couldnt.Gravatar brain2007-04-211-3/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6821 e03df62e-2008-0410-955e-edbf42e46eb7
* Feature request outlined in bug #257, allow connect/allow lines by portGravatar brain2007-04-151-2/+12
| | | | | | | Needs QA test git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6798 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixed a DNS timeout race condition that could result in a NOTICE AUTH ↵Gravatar special2007-04-021-3/+8
| | | | | | message being sent after connecting (thanks NBKWH5I) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6730 e03df62e-2008-0410-955e-edbf42e46eb7
* 1.1.4+Norvegia v1.1.4Gravatar brain2007-03-251-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6713 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix two things: (1) log gets replaced by a user fd after restart causing ↵Gravatar brain2007-03-241-0/+1
| | | | | | | | | debug log to go to a user's status window (!) (2) restart failing due to segfault within libc (this is because some moron decided that stdin, stdout, and stderr should still be non-null if the files arent actually open!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6707 e03df62e-2008-0410-955e-edbf42e46eb7
* Add third parameter to OnUserQuit (quit reason for opers only) - bump api ↵Gravatar brain2007-03-151-1/+17
| | | | | | | | | | | version Add SetOperQuit and GetOperQuit methods to userrec Add OPERQUIT command to protocol - bump protocol version All this is to properly allow hidebans etc to work properly git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6675 e03df62e-2008-0410-955e-edbf42e46eb7
* Added OnBufferFlush, improved m_safelist, no longer works on a timer but ↵Gravatar brain2007-03-111-0/+5
| | | | | | | | | works on the writeability state of each user who is listing. 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
* This properly fixes options:hidebans and options:hidesplits by providing the ↵Gravatar brain2007-03-061-51/+27
| | | | | | | | | facility to have two different quit messages for a user, one an oper sees and one a normal user sees. 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
* 1) Fix for nickname overruled with new cullList stuff -- we have to change ↵Gravatar brain2007-02-191-1/+8
| | | | | | | | | | | | their nick, its not safe to quit them as it messes up the nick hash. 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
* Change /msg $* to have the correct source the same way /notice $* doesGravatar brain2007-02-171-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6588 e03df62e-2008-0410-955e-edbf42e46eb7
* Check for ::ffff:x.x.x.x ips in user resolver, and if we see one initiate an ↵Gravatar brain2007-02-081-2/+9
| | | | | | ipv4 PTR lookup rather than ipv6 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6550 e03df62e-2008-0410-955e-edbf42e46eb7
* "is now your hidden host" -> "is now your displayed host". Wording fits ↵Gravatar brain2007-02-081-1/+1
| | | | | | better when uncloaking git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6549 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix typoGravatar brain2007-02-051-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6505 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for allowing dns lookups to work in mixed protocol modeGravatar brain2007-02-051-3/+13
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6504 e03df62e-2008-0410-955e-edbf42e46eb7
* Now working in svn:Gravatar brain2007-02-051-2/+2
| | | | | | | | | | | | 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
* Not safe for use yetGravatar brain2007-02-051-2/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6502 e03df62e-2008-0410-955e-edbf42e46eb7
* Move quitting of clients to a central Cull List, and do quitting outside ↵Gravatar peavey2007-02-051-112/+44
| | | | | | userrec and in main loop. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6497 e03df62e-2008-0410-955e-edbf42e46eb7
* Debug the spoutmouth outputGravatar brain2007-01-171-1/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6363 e03df62e-2008-0410-955e-edbf42e46eb7
* Make this more sensibleGravatar brain2007-01-171-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6362 e03df62e-2008-0410-955e-edbf42e46eb7
* Log client output, so we can actually see what we're sending out, and make ↵Gravatar brain2007-01-171-0/+1
| | | | | | more sense of stuff git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6361 e03df62e-2008-0410-955e-edbf42e46eb7
* Crusade to remove debug from stable and tested parts of the core and base ↵Gravatar brain2007-01-151-26/+0
| | | | | | | | | | modules. 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
* Document dns caching, add a "bool cached" to OnLookupComplete method in ↵Gravatar brain2007-01-071-2/+2
| | | | | | Resolver, and and add " -- cached" to end of 'looking up your host' string if their result is a cached result git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6254 e03df62e-2008-0410-955e-edbf42e46eb7
* DNS caching stuff (almost done)Gravatar brain2007-01-071-8/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6252 e03df62e-2008-0410-955e-edbf42e46eb7
* DNS Stuff - this wont work right yet, it will soon (tm)Gravatar brain2007-01-071-7/+15
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6250 e03df62e-2008-0410-955e-edbf42e46eb7
* Move all /WHOWAS related out of core and into cmd_whowas.Gravatar peavey2007-01-071-167/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6249 e03df62e-2008-0410-955e-edbf42e46eb7
* Add TTL stuff to dns system (pass it to inherited objects)Gravatar brain2007-01-071-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6247 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix lusers breakage introduced by latest set of optimizationsGravatar brain2007-01-031-1/+14
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6219 e03df62e-2008-0410-955e-edbf42e46eb7
* SirOlli gets credit for this fix, because he was the only one willing to ↵Gravatar brain2007-01-031-1/+1
| | | | | | work with us till we cracked it :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6218 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for crash in desync of whowas lists on rehash. Also less mem leakage on ↵Gravatar peavey2007-01-021-35/+64
| | | | | | adding to whowas. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6217 e03df62e-2008-0410-955e-edbf42e46eb7
* Cache invalidation in the wrong place, fixes FHOST remote host change bugGravatar brain2006-12-311-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6187 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix broken cloaking introduced by last commit (we need to invalidate the ↵Gravatar brain2006-12-301-7/+6
| | | | | | cache after setting the new string, not before) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6181 e03df62e-2008-0410-955e-edbf42e46eb7
* Cached GetFullRealHost etc.Gravatar brain2006-12-301-9/+61
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6179 e03df62e-2008-0410-955e-edbf42e46eb7
* Tweaks to instantiate less stuff when writing to a bunch of usersGravatar brain2006-12-301-6/+13
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6172 e03df62e-2008-0410-955e-edbf42e46eb7
* Tons of optimization of WriteChannel, WriteChannelWithServ, WriteCommon etc, ↵Gravatar brain2006-12-301-4/+14
| | | | | | | | | | dont call userrec::GetFullHost or snprintf for every item, call it just once. 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
* Add unregistered user counter, this may also fix the (minor) m_conn_lusers ↵Gravatar brain2006-12-301-1/+11
| | | | | | shows current connection as unregged git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6170 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix a bug in whowas that could desync list.Gravatar peavey2006-12-241-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6091 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix loop when quitting multiple users (this is probably whats eating cpu)Gravatar brain2006-12-241-3/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6084 e03df62e-2008-0410-955e-edbf42e46eb7
* Hash rehashing changeGravatar brain2006-12-231-17/+18
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6080 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove useless debugGravatar brain2006-12-221-8/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6062 e03df62e-2008-0410-955e-edbf42e46eb7
* Refactor connect allow/deny linesGravatar brain2006-12-221-37/+32
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6061 e03df62e-2008-0410-955e-edbf42e46eb7
* Proper fix for CS server crash, forgot to delete chanrec* from users ↵Gravatar peavey2006-12-211-3/+1
| | | | | | chanlist on PurgeEmptyChannels() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6052 e03df62e-2008-0410-955e-edbf42e46eb7
* Crude hotfix to what's been crashing chatspikeGravatar peavey2006-12-211-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6051 e03df62e-2008-0410-955e-edbf42e46eb7
* When we handle a READ event on a user, return immediately.Gravatar brain2006-12-191-1/+1
| | | | | | | 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
* Add stuff so that the core catches CoreException properlyGravatar brain2006-12-161-6/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6017 e03df62e-2008-0410-955e-edbf42e46eb7
* Jesus, look who's the commit whore today. More header updates, and removal ↵Gravatar w00t2006-12-151-7/+4
| | | | | | of namespacing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
* Try harder to make sure the ERROR string gets sent when closing a connectionGravatar brain2006-12-151-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5994 e03df62e-2008-0410-955e-edbf42e46eb7
* Cleaning up irrelevent stuff in channels.cppGravatar brain2006-12-151-31/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5993 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove misc debugGravatar brain2006-12-141-7/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5991 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix silly bug of the day.Gravatar brain2006-12-141-4/+10
| | | | | | | | | 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
* Change how users are quit if they get a write error during the things they do.Gravatar brain2006-12-141-5/+15
| | | | | | | | | 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