Age | Commit message (Collapse) | Author |
|
|
|
Do not exit if we can't determine it
|
|
We can cope with fds greater than SocketEngine::GetMaxFds() since 3752b3f59d5216d7dc6221a361efc76b9ad2273d
|
|
This removes the need to call GetRef() for every socket in DispatchEvents()
|
|
|
|
|
|
|
|
|
|
|
|
Move timespec to DispatchEvents() in kqueue, there is no reason for it to be a member variable
|
|
|
|
|
|
|
|
|
|
Use vectors that grow as necessary instead of mass allocating everything at once
Rework poll engine logic to make sense
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The maximum number of file descriptors was incorrectly using the OS maximum,
not the process maximum. Thanks to Liath for finding & testing.
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12639 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12638 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12584 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12582 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12449 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12293 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11784 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11774 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11762 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
do not force readability.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11760 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10972 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
for me.. this *does* need more testing though. Fix spotted by dz (check .filter, not .flags, and don't try to use it as a bitmask). TOR, ratbox, and similar projects use code like this, so I am fairly confident it is ok.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10971 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
its not too stable, e.g. placing wantwrite sockets into oneshot wantread? :P"
This reverts commit 11302829a008263dc306d08d675ad49d7d3f62ab.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10970 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
too stable, e.g. placing wantwrite sockets into oneshot wantread? :P
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
one kqueue iteration
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10906 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10561 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
cycle, same as select and poll.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10514 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9394 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
logger. This stuff was hackish and isnt required. If your hard disk locks up, then you have bigger worries.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9276 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9273 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9269 e03df62e-2008-0410-955e-edbf42e46eb7
|