summaryrefslogtreecommitdiff
path: root/src/socketengines
Commit message (Expand)AuthorAgeFilesLines
* Add a lot more timestamps for debugging things that take too longGravatar Daniel De Graaf2010-10-061-0/+6
* Add CrashState for tracing basic call state when the stack is corruptGravatar Daniel De Graaf2010-08-251-0/+1
* Finish header file #include untangleGravatar Daniel De Graaf2010-08-085-11/+0
* Fix kqueue compileGravatar Daniel De Graaf2010-08-031-2/+2
* DelFd should not fail, it will leave a bad dangling pointer in that caseGravatar danieldg2010-08-035-25/+19
* Don't send events for removed FDs when both read and write are readyGravatar Daniel De Graaf2010-08-035-24/+14
* Fix kqueue to not report 0 maximum open sockets•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12449 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-131-26/+14
* When we get events on unknown file descriptors, unregister them rather than s...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12436 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-111-0/+4
* Remove excessive gettimeofday system calls•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12293 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-01-185-0/+5
* ...because every now and again, i have to do a massive commit.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2010-01-115-8/+8
* remove a hanging #endif•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11971 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-10-241-1/+0
* Remove IOCP socket engine•••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 Gravatar danieldg2009-10-242-755/+1
* Fix noeol on socketengine_select•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11874 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-141-16/+2
* Ugly-ish hack to select SocketEngine on windows until I or someone else finds...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11835 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-10-112-29/+10
* Fix some signedness.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11830 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-10-111-1/+1
* Fix Extend usage and a few other things for latest API. Compiles but not tested.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11828 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-10-111-42/+45
* Remove include/inspircd_se_config.h and socketengine-specific headers•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11784 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-306-6/+505
* Fix linking errors on BSD•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11774 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-281-5/+1
* Compile fixes and message updates•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11767 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-261-3/+3
* Add FD_WANT_SINGLE_WRITE to efficiently replace FD_WANT_POLL_WRITE•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11762 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-266-18/+33
* Clean up SocketEngine interface to allow edge-triggered I/O and sockets that ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11760 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-266-281/+243
* Create StreamSocket for IO hooking implementation•••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 Gravatar danieldg2009-09-216-27/+23
* Fix invalid iterator in select socketengine, clean up its memory use a bit too•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11687 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-091-14/+13
* Update all wiki links to point to the new wiki. This was done automatically w...•••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 Gravatar psychon2009-03-156-6/+6
* Nuke trailing spaces•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-02-142-9/+7
* Some fixes to the kqueue socket engine•••The old code choked badly if a socket which was !eh->Readable() was added (it went into an endless loop where kqueue would keep reporting that socket for writeability). This also fixes a bug where DelFd() failed to clean up properly which caused the next AddFd() for an identical fd number to fail. Oh and this also adds some error messages and does some minor cleanup... git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11033 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar psychon2009-02-061-20/+33
* Fix the poll socketengine to actually work.•••The old implementation tried to use holes for unused entries in the array for poll() and the OS replied with POLLNVAL to which we replied with 100% CPU. Improvements: - It does compile! - It works git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11008 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar psychon2009-01-271-30/+79
* Fix for bug #686, include sysctl.h in a freebsd-specific ifdef•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10983 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2009-01-221-0/+3
* Missed one, thx peavey!•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10972 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-181-1/+1
* Fix what should have been the (real) problems with kqueue, so far so good for...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10971 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-181-4/+3
* Revert "Revert some of w00ts kqueue massacre from september, for some reason ...•••This reverts commit 11302829a008263dc306d08d675ad49d7d3f62ab. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10970 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-181-2/+4
* This is more accurate. #ifndef __FreeBSD__, #else, #endif•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10962 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2009-01-141-3/+2
* This should work, but not sure on these defines in poll socketengine•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10961 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2009-01-141-3/+21
* Revert some of w00ts kqueue massacre from september, for some reason its not ...•••randomly uses 100% cpu with the newer code, seems kqueue doesnt quite like to work exactly the same as epoll and poll. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10960 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2009-01-141-4/+2
* Update copyrights for 2009.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-026-6/+6
* Backport from socket branch: allow read and write events to be triggered on o...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10906 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-12-231-1/+2
* Fix my massacre of kqueue, filters may not be or'd.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10561 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-09-191-1/+2
* Experimental WSAPoll (thanks for not just using poll(), guys) support for Win...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10516 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-09-111-1/+0
* These socket engines may now recieve write and read events in the same cycle,...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10514 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-09-113-3/+3
* fix a warning. I am on a warning zapping crusade today.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10380 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-09-041-1/+1
* Fixes to make poll(2) socket engine work properly•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10269 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-08-251-1/+3
* Numerous changes to make this build..•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10268 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-08-251-11/+13
* Forward-port poll socket engine as it seems reasonably stable, and half-hack ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10264 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-08-252-1/+180
* Forward port r10234, thanks psychon•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10235 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-08-232-2/+2
* Fixes to some stuff that writes on memory it shouldn't (thanks psychon).•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10047 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-07-201-4/+4
* Measure bandwidth statistics from the socket engine (kiloBITS per second in, ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9918 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2008-06-181-0/+1
* Only prepare epoll for 25% of maxfds initially; it will grow beyond that as n...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9832 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar special2008-06-011-1/+2
* Improve debug output on a few key methods of epoll socketengine, a must when ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9830 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2008-06-011-1/+11
* Debug on out of range FD.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9776 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-05-191-1/+1
* cleanup an old unused var•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9703 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2008-05-111-2/+0