summaryrefslogtreecommitdiff
path: root/src/socketengine.cpp
AgeCommit message (Collapse)Author
2006-10-30WARNING: This commit breaks kqueue and select -- work in progress!brain
epoll now allows both a write and a read event on a socket at the same time. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5580 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-30Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include listsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-18Get rid of SocketEngine::Wait and array-copy, change to ↵brain
SocketEngine::DispatchEvents git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4944 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-12So i wonder why we've not had this problem soonerbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4914 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Just to mess with om's head, remove helperfuncs.h from everywherebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Now two types of log macro, log() and ilog(). log() assumes an InspIRCd ↵brain
object called ServerInstance, ilog() takes an InspIRCd object as first param. TODO: Run a regexp over these, using perl, to translate them into InspIRCd::Log calls and then eliminate the macro :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4879 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19Whoops, forgot SocketEngine::SocketEngine() gets called recursively from ↵brain
*Engine::*Engine() (where * is the type being built) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4441 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19* Seperate out socket engines into derived classes of SocketEngine.brain
* Add a classfactory SocketEngineFactory to create a new socketengine of the configured type * Implement configure hax to compile only the required socketengine and the base class * Eliminates ugly defines, and is more in line with C++ ways git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4439 e03df62e-2008-0410-955e-edbf42e46eb7
2006-06-29Change log() to a #define, the real symbol is now do_log(), the new macro ↵om
auto-prefixes all log messages with the file and line number where log() was called - should be nice for debugging and telling wtf is coming from what.Currently uses a (probably very standard) g++ extension to make the macro work. Shouldn't be an issue. You must make clean and rebuild all of insp. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4081 e03df62e-2008-0410-955e-edbf42e46eb7
2006-05-16Check for failed epoll or kqueuebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3961 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11Added method to check if an fd is in the socketengine or notbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3667 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-07Tweaks to socket engine, faster buffer flush and hopefully more stablebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3521 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-26Valgrind fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3353 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-15Updated copyrights in headers etc using perl inplace editbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2795 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-12Test change to level-triggered epollbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2779 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29Added output of error if file descriptor given to AddFd is > MAX_DESCRIPTORSbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2701 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29Changed to MAX_DESCRIPTORSbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2700 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29Added extra checking to socketengine to refuse connections after we reach ↵brain
the max git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2697 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29Added counters for MAX_DESCRIPTORS etc which allows the socket engine to ↵brain
refuse new fd's once you hit the OS limit git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2696 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29Optimizing to not use so much cpu with high user loadsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2691 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-14Changed a broken && to & which was preventing epoll from doing outbound ↵brain
connects properly git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2390 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-13Removed some logging that can cause excessively huge logs when select() is ↵brain
being used git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2366 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Timing tweaksbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2342 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Increased socketengine wait cyclesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2341 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Added commentsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2338 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12select() debuggingbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2336 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Added checking to find out why select() splitsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2335 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Fixed WRITEBIT support in select() enginebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2334 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12*EXPERIMENTAL* Tied DNS into new socket enginebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2331 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12More experimental gubbinsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2330 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Added GetTypebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2327 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12EXPERIMENTAL new socket engine codebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2326 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Made compile on linuxbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2325 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Made compile on freebsdbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2324 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Working on making this actually compilebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2322 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12Added preliminary socketengine stuffbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2321 e03df62e-2008-0410-955e-edbf42e46eb7