summaryrefslogtreecommitdiff
path: root/src/socketengines/socketengine_iocp.cpp
AgeCommit message (Collapse)Author
2009-10-24Remove IOCP socket enginedanieldg
IOCP has been experimental since its introduction, and has not worked correctly for some time. Since we have no windows developer, remove the dead code. Most of the advantages of IOCP are not used by an ircd process regardless: we do not use threads for our client processing, and we add an extra copy operation that eliminates any gain from OS-level buffer reuse. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11970 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11Ugly-ish hack to select SocketEngine on windows until I or someone else ↵peavey
finds a better way. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11835 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11Fix Extend usage and a few other things for latest API. Compiles but not tested.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11828 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-30Remove include/inspircd_se_config.h and socketengine-specific headersdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11784 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Add FD_WANT_SINGLE_WRITE to efficiently replace FD_WANT_POLL_WRITEdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11762 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-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-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-02-14Nuke trailing spacespeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 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-09-04fix a warning. I am on a warning zapping crusade today.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10380 e03df62e-2008-0410-955e-edbf42e46eb7
2008-06-18Measure bandwidth statistics from the socket engine (kiloBITS per second in, ↵brain
out, total) and display them in /stats z plus send them via the named pipe to the windows gui git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9918 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-18Apply patches to remove 200-odd dll limit on windows, made by GreenReaper, ↵brain
lots of thanks! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9533 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07Patch from Brain: set MAX_DESCRIPTORS for all socket engines (I missed this)w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9394 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02Automatic detection and allocation of max fds. No longer needs recompile to ↵brain
change, just adjust it in your kernel or whatever and restart insp. Please note that select and iocp socket engines do not support detection and are always set to FD_SETSIZE and 10240 descriptors respectively. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9263 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-22Convert remaining InspIRCd::Log() calls to new logging systemaquanight
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9001 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-14Keep count of the number of events in total, and seperate read, write and ↵brain
error event counters. We can use this for monitoring of heavy socket engine activity, e.g. a 'stuck' eventhandler git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8933 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-06Pro tip #2: making a fatal error 'SPARSE' logging only is a bit silly.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8844 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-06Pro tip: printf() doesn't add newlines for youw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8843 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-05fixed std:: stufffez
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8828 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-10Header update: 2007 -> 2008w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23Move socketengines into their own dir. This was all w00t's idea, but i told ↵brain
him no because i didnt think it would work. Now ive done it myself :P ner ner ne ner ner :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8332 e03df62e-2008-0410-955e-edbf42e46eb7