summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2008-09-20Fix a rather nasty race condition revealed by my reading through the ↵brain
comments and enhancing them. Back when i did executeable includes, i placed a 'todo' in the code which said something along the lines of: 'we cant pass a User* into the config reader any more, because when the config reader thread finishes, that user may be gone and this will crash. Consider using an UID instead so that if the user vanishes, we can detect this situation.' Of course, nobody ever did this, so i'm doing it now to ensure we dont come up against some particularly ugly race condition crashes! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10569 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-20More commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10568 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-20More comments, and remove some unused craq. Someone (that being me) once ↵brain
wrote a craqy imitation of std::bitset called dynamicbitmask which took up a large amount of hashcomp.{h,cpp} before i actually knew that std::bitset existed. NOTHING has ever used this class, so whack it as tidyup, knowing it wont break anything :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10567 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-20more commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10566 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-20Start documenting stuff for 3rd party developers. Comments only, won't ↵brain
affect feature freeze git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10565 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-13Changed Allowed Modes to bitsets.aquanight
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10541 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-13Remove unneeded namespace stuff.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10535 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-12Minor style tidyup.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10533 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-12Cleanup of some internals. Tested via m_httpd.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10527 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-11Remove some duplication, everything calls the SE equivilant anyway.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10525 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-11Remove useless parameter.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10524 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-11Fix a comment.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10523 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-11Experimental WSAPoll (thanks for not just using poll(), guys) support for ↵w00t
Windows. Untested, uncompiled. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10516 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-11There is absolutely no need to cache connect timeout.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10512 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-11Remove an unused member.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10511 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-11Remove WaitingForWriteEvent, it seems to do *nothing* except confuse things. ↵w00t
Also, don't close socket on http if FlushWriteBuf doesn't write it all in one go, in fact, don't try FlushWriteBuf at all - use the sockets default of waiting to be told it's safe to write data. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10509 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-10Clear out the string used for the temporarily stored hostname during DNS ↵special
resolution. Should save at least strlen(host) per user git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10496 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-10Fixed comments for cached host fields in User; 3/4 of these were completely ↵special
incorrect. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10494 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-09Remove a totally redundant method (this is already available via inheritance ↵w00t
from EventHandler) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10490 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Remove crappy, unsafe (and now unneeded!) casts.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10476 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Remove listening from BufferedSocket, it's bloaty and horrid. We have a ↵w00t
ListenSocketBase class to handle this instead now. :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10470 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Make OnAcceptReady pure virtual, rename ListenSocket to ListenSocketBase, ↵w00t
create ClientListenSocket and inherit from ListenSocketBase to create User objects. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10469 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Add incoming IP to OnAcceptReadyw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10467 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Tidy up some of the internals a bit, making things a bit more extensible and ↵w00t
future proof. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10462 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Merge class connection in with class user (nothing else inherits it anyway, ↵w00t
and all the fields in here were only really useful to users anyway) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10460 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-09-07Initialising the member we added might be an idea.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10456 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Fix forward-declaration caused as a result of recent changes.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10448 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Start moving IO hooking from being bufferedsocket based to residing in ↵w00t
EventHandler, this will pave the way for a generic listener type, and also simplifies a lot of code. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10447 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Grr at windows exportsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10424 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06fixes so m_sqloper builds on winbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10421 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Make ThreadEngine::Mutex() protected too, make the user use Lock() and Unlock()brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10418 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Speedupsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10414 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Nope w00t it wasnt the last :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10413 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Properly handle CIDR etc for user pointer extbansbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10412 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Make sure user is null when a literal is passedbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10411 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Optional use of user objectbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10410 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Whoops left something outbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10409 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Newer extban-supporting listmode apibrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10407 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06Stick Enable() in private, enhance commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10406 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-06New methods in mutex purely for readability:brain
void Lock() { Enable(true); } void Unlock() { Enable(false); } git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10403 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-04MutexEngine -> MutexFactory, more sensible namebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10385 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-04Fix silly compile errorsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10383 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-04ability to create mutexes (rather than just having one system wide mutex) in ↵brain
the threadengines, allows for migration of m_mysql etc. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10381 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-31Whoops, left off a virtual. Please ensure youre using this version if you ↵brain
actually want mode params to be propogated git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10366 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-31Move all the parameters around AGAIN. See docs shortlybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10364 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-31Save 4 bytes (assuming sizeof(ptr) == 2) per user record, storing unneeded ↵w00t
pointers (self managed class) that nothing was ever done with. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10359 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-28Rename lowermap to rfc_case_insensitive_map, add case_sensitive_map.. adjust ↵w00t
files to not pass lowermap directly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10337 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-27Add <disabled:fakenonexistant> - ircd will pretend that a disabled command ↵w00t
just doesn't exist (for austnet), document <disabled:usermodes> and <disabled:chanmodes> (bad aquanight.) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10327 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-25Change module versions to use a string instead of fixed digits, and use ↵w00t
propset ID to auto-set versions, so we don't have (essentially unused) module versions. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10291 e03df62e-2008-0410-955e-edbf42e46eb7