summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2006-12-15Try harder to make sure the ERROR string gets sent when closing a connectionbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5994 e03df62e-2008-0410-955e-edbf42e46eb7
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-14Remove commented out FlushWriteBuf()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5992 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14Remove misc debugbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5991 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-14CPU Usage percent in stats z! yay!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5988 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-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-14Refactoring:brain
1) Chain together a resize and an append, to improve the buffer read efficiency 2) eliminate a const char* pointer by doing it purely with string, saving a data copy 3) use iterators rather than ints and vector::size() for spooling motd and rules files to users 4) change a usage of !length() to empty() to make it more readable git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5985 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Fix m_watch to properly use OnCleanup, and to delete pointer on quitbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5984 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5981 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Turn watchlist back to map. watchlist is small, watchentries is large, only ↵brain
watchentries needs to be hash_map (watchentries is the primary index of whos watching each nick, watchlist is the small nicklist attached to each user) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5980 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Change m_watch to use hash_map rather than map, because of the large number ↵brain
of entries we deal with it will usually be faster git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5979 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Improve the way 005 ISUPPORT is sent to users when they connect, cache it in ↵brain
a much more sane format which is much simpler to spool to them git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5978 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Properly fix 'changed nickname from one thats on your notify to one thats ↵brain
not' condition. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5977 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Whoops, one too many paramsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5976 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Fix /nick signoff messagebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5975 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13More to fix.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5974 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Make this behave more like other WATCH implementationsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5973 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Fix quite a few whoopsiesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5972 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13Untested! New m_watch that should be hundreds of times faster (im not joking ↵brain
either) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5971 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Avoid pointless vsnprintf() when our loglevel doesnt meet requirementsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5970 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Remove unused debugbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5969 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-12-12New clone counting mechanism (this isnt tested yet)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5967 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Make FounderProtectBase::remove_own_privs a reference, so we can change it ↵brain
on the fly without needing to re-construct the objects git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5966 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Someone forgot to do founder too :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5965 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Fixed a pretty nasty bug that allowed users to +a themselves if ↵special
deprotectself was enabled (thanks webs) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5963 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Reverted om's commit so we can keep laughing at him for never doing anythingspecial
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5962 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12I yell 'LIES' in the face of anyone who says I don't commitom
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5961 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12AnMaster thinks im not committing enough, so heres a pointless commit for him.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5960 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12More commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5959 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Fix trivial broken stat counterbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5958 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12Whoops, forgot to unpublish the interface!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5957 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11irc::string assign(std::string&)brain
std::string assign(irc::string&) soooo: irc::string foo = assign(my_std_string); :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5956 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Just commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5955 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Tidy up a loop a bit so it isnt for(;;) with a breakbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5954 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11And fix the typos in it.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5953 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Attempt another speedupbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5952 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Fix kinda stupid whoopsiebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5951 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Faster, stronger, ...err no, not the million dollar man.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5950 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Change how assembling of multiple lines works, avoid data copiesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5949 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Fixed a typo in selectspecial
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5948 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Fix EOF conditions on inspsockets which are having their write() handled by ↵brain
modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5947 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Better handling of write() failure, but this might still not be exactly right.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5946 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11This is better now.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5945 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Initial commit of m_dnsbl, v2.0 - based on satmd's 1.0 m_dnsbl, modified to ↵w00t
work with 1.1 (and hopefully work a bit faster. Removed tag option, as it doesn't broadcast to multiple servers, leaks memory, and is largely useless. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5944 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11Someone forgot to add the copyright headers here :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5943 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11And give it error checking... whoops.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5942 e03df62e-2008-0410-955e-edbf42e46eb7