summaryrefslogtreecommitdiff
path: root/src/userprocess.cpp
AgeCommit message (Collapse)Author
2007-10-25this should fix any of the crashes w00t outlined where User::MyClass == NULL.brain
The simplest fix seems to be that if the user has no class, skip all the code that uses the class values. This makes sense because the only situation where User::MyClass == NULL is when they arent authorised to connect and are being quit so checking flood levels and max sendq etc are irrelevent. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8358 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23Move some stuff from using userrec cached stuff to using stuff in the ↵w00t
connect classes git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8339 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-22Remove the need for a bunch of the hard coded arrays/hashes by scanning the ↵brain
src/ dir for tag comments, like in modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8307 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Move DNS timeouts into the UserResolver class, where they should have been ↵w00t
(but seems to have been overlooked due to the relics of 1.0). This simplifies some stuff :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8278 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Remove more debugbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8268 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Fixed ssl clients on trunk. The problem peavey was having was that before ↵brain
ReadBuffer was char[] now its char*. sizeof() on char[] returns its size in chars, and sizeof on char* returns 4. :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8263 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Move some stuff around so the last penalty line doesnt get held erroneously ↵brain
until data arrives again git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8254 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Tweak so that commands with larger penalty than 1 work rightbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8252 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Yay, all works!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8251 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21*untested* command buffering/penaltybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8250 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Subtract a boobiew00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8242 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-21Remove next_call garbage.. It didn't really do much more than obfuscate ↵w00t
things. InspIRCd::DoBackgroundUserStuff() is now called once per second, roughly. This will (of course) not be going into 1.1.x git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8241 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-18Oops, OnCheckReady being called after registration! This doesnt break the ↵brain
new m_ident, but it goes against spec git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8232 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15In the grand tradition of huge fucking commits:w00t
- chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Remove more unnecessary header trafficw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7887 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27Found the bug, turns out i just introduced it with the last commit :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7591 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-26Move a ton of stuff into caller* functorsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7578 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-26Apply diff for userprocess.cpp from earlier in the daybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7577 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-24Convert some ancient GlobalCulls usage into userrec::QuitUserw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7534 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23Squash a warning reported by owinew00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7519 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-19Fix for bug #326, 'no error' quit can no longer theoretically occur because ↵brain
all errno == 0 are weeded out with a shorthand if() on calling userrec::SetWriteError, before, only one of three occurances was. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7478 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵peavey
auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-01Compile fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7417 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-01Optimizations and code tidyups. QA please check that svsnick and other ↵brain
forced nick changes still work right after this git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7416 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-11* Changes to userprocess functions to allow flood limit removal by m_operflood.burlex
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7273 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-09Change some = "" to clear() and some == "" to .empty()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7263 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-08Make this message slightly more meaningful, as discussed in .coders a while backw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7252 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-04Excess flood tidyupsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7230 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-04The recvq > netbuffersize check isnt needed *at all* as we check recvq > ↵brain
recvqmax in userrec::AddBuffer called just above it. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7229 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-21All non-commands part of the core are now warning clean on vs8brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7096 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-14Allow for resizing of MAXBUF above/below 512 via non-interactive configure. ↵brain
(Some crazy mofo on the forums asked for this, good luck its your funeral :p) THIS IS UNSUPPORTED BY US IF YOU CHANGE IT, WE WON'T EVEN TELL YOU HOW :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7022 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-21Ensure it cant happen the other way around, eitherbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6822 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-02Fixed a DNS timeout race condition that could result in a NOTICE AUTH ↵special
message being sent after connecting (thanks NBKWH5I) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6730 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-191) Fix for nickname overruled with new cullList stuff -- we have to change ↵brain
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
2007-02-05Move quitting of clients to a central Cull List, and do quitting outside ↵peavey
userrec and in main loop. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6497 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-15Crusade to remove debug from stable and tested parts of the core and base ↵brain
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
2007-01-15Remove some debugbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6353 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-22change userrec int timeout to time_t since it's a timestamp made of TIME + ↵peavey
users connection class timeout. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6066 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16Add stuff so that the core catches CoreException properlybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6017 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15Jesus, look who's the commit whore today. More header updates, and removal ↵w00t
of namespacing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14Remove commented out FlushWriteBuf()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5992 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14Fix silly bug of the day.brain
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
2006-12-14Remove FlushWriteBuffer() from DoBackgroundUserStuff(). Its no longer ↵brain
required here, it used to try and flush the buffer before we actually monitored write events, long ago, without seeing if it could write first, and wasted cpu. It should be removed now and doesnt seem to affect anything. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5989 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14Change how users are quit if they get a write error during the things they do.brain
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
2006-12-10Correctly handle write eventsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5920 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-05Older gcc gets confused when the only parameter has a default value? O_obrain
Changed an Instance->Time() to Instance->Time(false) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5655 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-31Remove some debugbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5602 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-31Fix the makefile confusion removal of these headers createsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5601 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-30Fix broken quits (i broke them by taking out a check i didnt think was ↵brain
required -- it was. RTFS!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5590 e03df62e-2008-0410-955e-edbf42e46eb7