summaryrefslogtreecommitdiff
path: root/src/users.cpp
AgeCommit message (Collapse)Author
2007-08-27Add FindNickOnly, that wont fall through to uid checks if isdigit(*first). ↵brain
We may need this. (i thought we did for this fix, we dont) Fix cmd_nick to not treat all nicks as invalid and make the client give up. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7883 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Whoops, i had a ! and i didnt need onebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7882 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Fixed sigabrtbrain
NOTE to w00t: When a user gets allocated a uid that is duplicate, the constructor throws. This was happening because i didnt pay attention to what i wrote and it always added uid "" :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7881 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Add uuid hash_map - its management is automatic via userrec ↵brain
constructors/destructors. Note that this means 'fake' users used to set modes etc get a uid, but this isnt a major thing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7876 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27A few tidyups, and comment how the new constructors work (so that w00t ↵brain
doesnt wonder where the feck his strlcpys went) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7875 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27More uuid fixes, and whack some warningsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7874 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Allocate uid in userrec constructor. Optional param added, if its empty, the ↵brain
server allocates one, if its not empty the user gets the one given (this is used for remote users) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7873 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27Add a call to the NICK handler that allows toggling of allowing invalid ↵brain
nicks to on or off. Use it in ForceNickChange to allow forced nickchange of a nick to a uid. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7869 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27UUID is now generated and set on client add, and shown after 005 via numeric ↵w00t
042: %s :your unique ID. This also replaces the fd-unknown style of nicks we used prior to recieving NICK from a client, just because it looks tidier. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7848 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-26And zero UUID in constructor.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7847 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23Craquity craq De-craq!brain
This is probably broken on windows, do not attempt to use there yet unless you like broken stuff. Cant say for sure as i havent even tried to build yet and most likely wont tonight. --- Abstract most of the berkely socket API out into SocketEngine derived classes. SocketEngine base class implements standard berkely sockets that 'real mens systems' like linux and freebsd have. For socketengine_iocp we implement the windows specific nonesense like the special things needed for udp and accept (ick). All this to eliminate a bunch of ifdefs. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7810 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19Add <connect:maxchans> as per feature bug #338 - combined with the last ↵brain
feature, this allows per-oper specific maxchans values, and even the same for non-opers! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7761 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19Allow changing of an oper's host on oper up using <type:class> (give it a ↵brain
connect allow or deny line name) - implements bug #367 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7760 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19Allow support for multiple dns results per request. This is a significant ↵brain
change and should probably not be backported to stable. This will allow for a fix to feature request bug #384 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7753 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-06Reset connect class settings on DNS resolution as we should.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7680 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27Tidyups, remove of ifdefsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7597 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-27Some smart tricks to eliminate win32 ifdefs that are creeping into portable ↵brain
files git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7589 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-24Modify RULES to use numerics instead of notices. I'm pretty sure these are ↵w00t
widespread these days, and client authors should <3 us a bit more. :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7537 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-24A few more I missed.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7535 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23Tidyup a bunch of stuff that was using userrec::modes directly rather than ↵brain
userrec::IsModeSet. Same for chanrec. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7506 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-15Fix for bug #349: NOTE there is important caveat about this in the example ↵brain
config, MAKE SURE TO READ IT. When you connect a cgi:irc client two different connect classes are checked at two different times (first the one that the website they are cgi'ing from, then later one for the user's real ip). READ THIS AND UNDERSTAND IT! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7440 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-06SSL buffering tweaks. NOTE this is not a complete fix till i say so, don't ↵brain
use this in production yet unless youre a masochist. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7427 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-28Fixed a bug that caused classes with passwords to instantly disconnect any ↵special
users (thanks Darom). Needs QA git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7414 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-04Add options:moronbanner. Yes really, thats what its called. See the example ↵brain
config. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7232 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-01No fucking point at all checking for CC_DENY twice. \o/.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7200 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-01We can make one saving in userrec::WriteWallOps though - we are checking ↵brain
IS_LOCAL inside the loop, we've had a seprate local only user list for god knows how long, we know the users in it are local. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7199 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-30Apply ipv6 #ifdef tidyup patch from djGrrr, thanks :)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7190 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-25Fix for bug #302. He may not have had any connect lines in his conf but it ↵brain
needed addressing anyway, because a bad rehash could leave the ircd in this state and it should just turn users away, not crash. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7138 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-21Same tweak, againbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7095 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-20Prevent vc8 from thinking we're dereferencing an end iteratorbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7059 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19Visual studio's ability to translate tabs to four spaces as default ↵brain
frustrates and peplexes tabnazi cat. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7047 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19Windows support. Tested and working to compile on freebsd and linux. Next ↵w00t
step is to make sure it actually works in windows too. ;p. Add Burlex to contributors. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-17Change the way i/o lines are formatted in debug log to make them more ↵brain
intuitive. Now includes a C or S to say if its client or server, plus the fd: Thu May 17 17:56:16 2007: C[15] -> :Brain MODE #test Thu May 17 17:56:17 2007: C[15] -> :Brain WHO #test git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7039 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-15Rather largeish change to class checking on connect to fix a few minor bits ↵w00t
and bobs here and there git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7029 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-15Slight security fix of sortsw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7027 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-05-12This catch doesn't need to be here. :ow00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6991 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-12We've had an IS_OPER macro for a long time. About time we started using it, ↵w00t
maybe? :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6990 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-10Small api change with wide reaching effects in modules - Allows modification ↵brain
of whats displayed by NAMES on a per-nick basis, so we can have UHNAMES in a seperate module to NAMESX (and possibly do some funky other stuff in the future too!) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6934 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-08- (FINALLY, ffs) add realnames to connect/remote connect server notices, per ↵w00t
HiroP's patch. No, we're not showing SSL - SSL is a module, putting that in the core is hacky. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6920 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-06Fix for bug #278 reported by aredridel, LUSERS output is required as per RFC ↵brain
1459 on connect, m_conn_lusers is therefore redundant (so i removed it :p) The core automatically triggers an LUSERS on connect now, which modules can still intercept the way they always have. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6898 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-04Where others charge, we give for free. Have fun and use wisely. With great ↵brain
power comes great responsbility. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6867 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-01Implement feature request in bug #271 by HiroP, allow disabling of maxlocal ↵brain
and maxglobal by leaving out each value from the tag git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6857 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-01Change a return NULL to a continue so that where host matches but port ↵brain
doesnt, skip the connect tag git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6854 e03df62e-2008-0410-955e-edbf42e46eb7