summaryrefslogtreecommitdiff
path: root/include/users.h
AgeCommit message (Collapse)Author
2006-12-15Cleaning up irrelevent stuff in channels.cppbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5993 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14Refactor userrec::chans.brain
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
2006-12-12Improve how we handle ELINEs on connect, turn O(2n) into O(n) (thats the ↵brain
best we can do with g/k/z/q checks for now :( ) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5968 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-14Tons of tweaks to the config stuff for the corebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5744 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-13Fix PruneWhoWas to actually work right on rehash. Add debug output to ↵peavey
whowas. More code comments to whowas. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5734 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-13add <whowas> config option to control whowas behaviour. *may break*peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5731 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-04Merge peaveys patch, tracker #162brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5642 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-02Please in the future everyone: DO NOT submit patches via nopaste. Nopaste is ↵brain
not designed for this, and mangles your patch so we cant apply it. gzip it instead! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5632 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-31Socket error state stuffbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5607 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-05Move opertypes/operclasses maps into ServerConfig, for some reason these ↵brain
were global to users.cpp and not accessible to any other file. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5419 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-04Whowas is now fixed.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5414 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-31Made CountChannels faster. We use it in quite a few places. It's now O(1) ↵brain
rather than O(n) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5094 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-31*thwap* om for not fixing the bugs he finds :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5087 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-29Snomask support cometh! and it leave a sticky white mess all over the floor :(brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5062 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-25Add userrec::ChangeIdent (which we were missing) which can emulate the ↵brain
quit/rejoin same as ChangeDisplayedHost git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5022 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-18EventHandler class, an abstraction for raw i/obrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4941 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-17userrec::AddBuffer and userrec::Write end up copying the const std::string& ↵brain
into a non-const to make use of it, why not just pass std::string and let the compiler do the copy when passing it? git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4933 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Tons more docsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4895 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Document all the new methods (eventually there will be more detail)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4893 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10Move tons more stuff into class InspIRCd*, make signal handler functions ↵brain
static members git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4855 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10FindNick, FindChan, ChanModes, UserList, CountInvisible, PurgeEmptyChannels, ↵brain
GetClass, WriteOpers, GetServerDescription -> into classes ServerConfig takes InspIRCd pointer in its constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4832 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Move more stuff into userrecbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4823 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Change some resolver stuff.brain
OM, THIS STILL WONT COMPILE! Error on the same line git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4821 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09userrec and chanrec now have their own independent pointer back to their ↵brain
'creator' InspIRCd* object, extern now longer required in channels.cpp or users.cpp git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4820 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Move tons more stuff into class InspIRCdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4819 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Tidy up loglevel enum (remove some C-ish defines)brain
change ServerConfig to pass a pointer to 'this' to Validation etc functions git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4811 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Get rid of Server::GetUsers(chanrec) - a throwback to before chanrec could ↵brain
do this itself Move: bool ChangeDisplayedHost(const char* host); bool ChangeName(const char* gecos); int CountChannels(); Into userrec git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4807 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09common_channels -> userrec::SharesChannelWith()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4805 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08WriteWallops() -> userrec::WriteWallops() (originates from a user, so ↵brain
belongs in userrec) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4802 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08Document new methodsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4801 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08WriteCommon() and WriteCommonExcept() -> userrec::WriteCommon(), ↵brain
userrec::WriteCommonExcept() WriteCommon_NoFormat() and WriteCommonExcept_NoFormat() -> std::string variants git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4800 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08Document Write* methods in userrecbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4799 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08WHEEEEE!!!!!brain
All of: Write(), WriteTo(), WriteFrom(), WriteServ() are now methods of userrec. Write_NoFormat(), WriteTo_NoFormat(), WriteFrom_NoFormat(), WriteServ_NoFormat() are now std::string-taking overloaded methods of the functions above All modules updated to use new syntax, my fingers hurt :( git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4798 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08Tons of commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4796 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08Move whowas stuff into its own namespace, move more stuff into userrecbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4795 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08FindMatchingLocal/FindMatchingGlobal -> userrec::LocalCloneCount(), ↵brain
userrec::GlobalCloneCount() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4794 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08userrec::UpdateNickHash(), userrec::ForceNickChange(), userrec::FullConnect()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4793 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08AddOper() and DeleteOper() -> userrec::Oper() and userrec::UnOper() (these ↵brain
do more, too) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4792 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08AddWhoWas(userrec) -> userrec::AddToWhoWas()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4790 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08kill_link() and Server::QuitUser() -> userrec::QuitUser() (static member) - ↵brain
this cant be a normal member as it causes the userrec to be deleted, and "delete this" is bad, mmm'k git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4789 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04Fix global session checksbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4715 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04Changesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4701 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04Change to using userrec::ip as a sockaddr to store port, ip and address ↵brain
family, rather than userrec::ip4 and userrec::port. This allows us to handle remote ipv6 users on an ipv4 server, and vice versa. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4694 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03Fixed resolver, forward lookup of ipv6 doesnt work right yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4674 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Add error messages to Resolver::OnError()brain
Add exception handling to several places that use Resolver (it can throw) Remove Resolver::ProcessResult(), its now handled within the bowels of dns.cpp git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4646 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Comments, add more detail, remove dnsqueue.h include from tons of placesbrain
Remove THREADED_DNS defines from all over the place git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4629 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4628 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4627 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Stuff to make user host resolving use class Resolver - not tested yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4626 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Move to entirely using insp_sockaddr and insp_inaddr for socket stuff, first ↵brain
step on the road to ipv6 support git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4609 e03df62e-2008-0410-955e-edbf42e46eb7