summaryrefslogtreecommitdiff
path: root/src/usermanager.cpp
AgeCommit message (Collapse)Author
2009-10-24Create irc::sockets::cidr_maskdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11968 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-23Make User::uuid and User::server constdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11962 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-22Make irc::sockets::* parameters consistent, add irc::sockets::maskdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11953 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-21Kill ListenSocketBase, use OnAcceptConnection for all new connectionsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11950 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-21Move all local-only fields to LocalUserdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11944 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-21Change module API to use LocalUser* where correctdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11943 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-21Split LocalUser and RemoteUserdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11940 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-03Get rid of a bunch of memory-wasting C-style stringsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11796 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-02Fix valgrind issues and crashes on exitdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11794 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-30Move destruction logic for User and Spanningtree into cull()danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11783 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Change IS_FAKE and CheckTimeStamp to IS_SERVER and ResolveModeConflict to ↵danieldg
clarify their use git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11765 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Remove InspIRCd* parameters and fieldsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Clean up SocketEngine interface to allow edge-triggered I/O and sockets that ↵danieldg
do not force readability. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11760 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-21Allow objects to be added to cull list during apply - fixes user deletion on ↵danieldg
netsplit git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11754 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-21Create StreamSocket for IO hooking implementationdanieldg
Fixes the SSL SendQ bug Removes duplicate code between User and BufferedSocket Simplify SSL module API Simplify EventHandler API (Readable/Writeable moved to SE) Add hook for culled objects to invoke callbacks prior to destructor Replace SocketCull with GlobalCull now that sockets can close themselves Shorten common case of user read/parse/write path: User::Write is now zero-copy up to syscall/SSL invocation User::Read has only two copy/scan passes from read() to ProcessCommand git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11752 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-21Remove mistaken duplicate check for fake usersdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11751 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-21Prevent fake users from quittingdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11748 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-17Prevent fake users from quittingdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11743 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Remove now-unused quitmsg/operquitmsg fields from Userdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11637 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Move user quit logic out of cull listdanieldg
This changes the cull list from a list of User* that ran special cleanup to a list of classbase* that simply deletes the objects. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11636 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Change OnHookUserIO to OnHookIO, making it usable for more than User* and ↵danieldg
less picky on string matching git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11628 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Remove more text<->binary IP conversions, making code more IPv4/IPv6 independentdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11578 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Return server port in GetPort rather than the arbitrary client portdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11576 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Change IP address storage in User to use more IPv4/IPv6 common codedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11575 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Strip SUPPORT_IP6LINKS #definedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11572 e03df62e-2008-0410-955e-edbf42e46eb7
2009-04-16Convert snomask 'A' into snomask 'a' for local announcements, add snomask ↵w00t
'A' for remote announcements. Make SAMODE send a snotice to 'a' and remote to 'A' - fixes bug #822, reported by Taros We really need a wrapper to use these, but, for now it's usable. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11304 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-18Fix for bug #788, set user->quitting before writing error to users socket, ↵brain
and allow appending to sendq for quitting users (just don't check sendq's on quitting users) This allows the ERROR message to reach the user. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11231 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-15Update all wiki links to point to the new wiki. This was done automatically ↵psychon
with the following command, only .Makefile.inc got some indent fixups by hand. for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-10Fix fast quit/connect by changing nick to UID on QuitUserdanieldg
This requires moving the sending of the QUIT back to usermanager from cull_list in order to prevent client desyncs. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11203 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-14Nuke trailing spacespeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7
2009-01-25Format this message a little nicer.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11004 e03df62e-2008-0410-955e-edbf42e46eb7
2009-01-02Update copyrights for 2009.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
2008-11-17Fix recursion in QuitUserw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10809 e03df62e-2008-0410-955e-edbf42e46eb7
2008-11-01Simulate AF_INET addresses for 4in6 connections [danieldg]w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10779 e03df62e-2008-0410-955e-edbf42e46eb7
2008-10-16possible fix for bug #623, reported by MacGyver. Untested please test :Dpeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10651 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Move a socket sanity check into the generic listener handler, avoiding the ↵w00t
need to instantiate a user object in insane conditions. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10463 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Merge the second interface for socket hooking into one, so it's all done by ↵w00t
Add/Del/GetIOHook now. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10457 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-29Remove last vestige of libircdfoo, by changing tag into a single ↵w00t
identifier marking object as requiring compilation into a .o (minor commit) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10076 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-12Scary.. CIDR range clone checking for <connect> tags.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9981 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-25First phase of conversion to dynamic limits on all the lengths, configured ↵brain
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
2008-05-23Fix this to not have the same issuebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9797 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-23Fix user->host not being assigned correctly for new connectionsaquanight
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9792 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-19Convert connection::hostbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9768 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-19Remove outdated commentw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9763 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-18Make User:: nick/ident/dhost/fullname and some other things std::string ↵aquanight
instead of char*/char[] (MODULES DO NOT COMPILE) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9748 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-18Same herebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9745 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-09AddClient -> AddUser, to be consistantw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9443 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-09Move QuitUser into UserManager class, and unstaticize it. This prepares for ↵w00t
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
2008-04-02Squish a warningbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9266 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Remove MAXCLIENTS, this is supported at runtime by the softlimit anyway.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9265 e03df62e-2008-0410-955e-edbf42e46eb7