summaryrefslogtreecommitdiff
path: root/src/socketengine_epoll.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Header update: 2007 -> 2008Gravatar w00t2008-01-101-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8695 e03df62e-2008-0410-955e-edbf42e46eb7
* Excess debugGravatar brain2007-10-211-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8283 e03df62e-2008-0410-955e-edbf42e46eb7
* Could it really be THIS simple?Gravatar brain2007-10-211-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8282 e03df62e-2008-0410-955e-edbf42e46eb7
* Roll back to 1.1.12 socket engine as a testGravatar brain2007-10-211-13/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8274 e03df62e-2008-0410-955e-edbf42e46eb7
* Change how the socket engines work when you addfd on an fd that already exists.Gravatar brain2007-10-211-4/+1
| | | | | | | the only SANE outcome is that youve forgotten to DelFd, so it does this for you. git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8270 e03df62e-2008-0410-955e-edbf42e46eb7
* Socket engine tweaks, and new m_identGravatar brain2007-10-181-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8227 e03df62e-2008-0410-955e-edbf42e46eb7
* More debugGravatar brain2007-10-141-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8177 e03df62e-2008-0410-955e-edbf42e46eb7
* Add debugGravatar brain2007-10-141-0/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8176 e03df62e-2008-0410-955e-edbf42e46eb7
* Backport fix for bug #407Gravatar brain2007-09-251-1/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8078 e03df62e-2008-0410-955e-edbf42e46eb7
* OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.Gravatar peavey2007-07-161-1/+157
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
* 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵Gravatar peavey2007-07-161-157/+1
| | | | | | auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove debugGravatar brain2007-03-111-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6659 e03df62e-2008-0410-955e-edbf42e46eb7
* Added OnBufferFlush, improved m_safelist, no longer works on a timer but ↵Gravatar brain2007-03-111-0/+1
| | | | | | | | | works on the writeability state of each user who is listing. Seems to test fine with 500 reet bots all listing at once. (doesnt lock up the ircd while listing them all any more, either, just lags a small amount) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6657 e03df62e-2008-0410-955e-edbf42e46eb7
* Added errno to the epoll failure message for more detailGravatar special2007-01-281-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6448 e03df62e-2008-0410-955e-edbf42e46eb7
* Crusade to remove debug from stable and tested parts of the core and base ↵Gravatar brain2007-01-151-26/+6
| | | | | | | | | | modules. Most of the code here being de-noised hasnt had a crash or bug in it for many months, if not a year so the debug output is useless noise in the logfile when trying to trace a bug in a REAL problem area. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6356 e03df62e-2008-0410-955e-edbf42e46eb7
* pgsql should now work thx to added posibility to force a fd out of the ↵Gravatar peavey2007-01-111-2/+2
| | | | | | socketengine. This should only be used as a *last resort* when dealing with 3rd party libs that invalidates a file descriptor beyond your control. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6295 e03df62e-2008-0410-955e-edbf42e46eb7
* Change delays to 1 sec.Gravatar brain2006-12-301-1/+1
| | | | | | | NOTE: The chances of this actually waiting for 1 sec on any sizeable network are miniscule git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6176 e03df62e-2008-0410-955e-edbf42e46eb7
* Tons of optimization of WriteChannel, WriteChannelWithServ, WriteCommon etc, ↵Gravatar brain2006-12-301-1/+0
| | | | | | | | | | dont call userrec::GetFullHost or snprintf for every item, call it just once. Turns O(n) calls for every write into O(~1) calls per write. Remove some debug from the socketengines which makes debugging hard on large channels (write availability message) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6171 e03df62e-2008-0410-955e-edbf42e46eb7
* We can't log in SocketEngine::DelFd(), because the fd we're removing might ↵Gravatar brain2006-12-231-5/+0
| | | | | | just be that of the logger! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6082 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix bug in m_dnsbl, a condition is always matched because someone was using ↵Gravatar brain2006-12-231-1/+2
| | | | | | | | | unsigned int to check a return val that can be -1 *slap w00t* Change around the way exit codes are formed so that we can return a sensible exit code that reflects why inspircd exited git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6076 e03df62e-2008-0410-955e-edbf42e46eb7
* Jesus, look who's the commit whore today. More header updates, and removal ↵Gravatar w00t2006-12-151-5/+2
| | | | | | of namespacing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
* Untested, new clever pointer voodoo class for binary-safe ziplinks output ↵Gravatar brain2006-12-111-2/+4
| | | | | | | | | buffers PLUS: Fix for random epoll dispatchevents crashes. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5926 e03df62e-2008-0410-955e-edbf42e46eb7
* Another couple of 'forgot to memset'sGravatar brain2006-11-141-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5742 e03df62e-2008-0410-955e-edbf42e46eb7
* Properly zero the epoll_event in epollengine WantWrite to stop a valgrind ↵Gravatar brain2006-11-141-0/+1
| | | | | | warning git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5741 e03df62e-2008-0410-955e-edbf42e46eb7
* A few lines here are loglevel DEFAULT and should be DEBUG.Gravatar brain2006-11-111-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5696 e03df62e-2008-0410-955e-edbf42e46eb7
* We should be fine without oneshot, i'll test this.Gravatar brain2006-10-311-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5612 e03df62e-2008-0410-955e-edbf42e46eb7
* Error set handlin g for select socketengine, tidyup epollGravatar brain2006-10-311-0/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5609 e03df62e-2008-0410-955e-edbf42e46eb7
* Socket error state stuffGravatar brain2006-10-311-2/+19
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5607 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove very verbose debugging of event systemGravatar brain2006-10-301-5/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5589 e03df62e-2008-0410-955e-edbf42e46eb7
* fix for (less severe) laggehnessGravatar brain2006-10-301-2/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5586 e03df62e-2008-0410-955e-edbf42e46eb7
* WARNING: This commit breaks kqueue and select -- work in progress!Gravatar brain2006-10-301-2/+30
| | | | | | | 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
* Fix this to display the channel name when overriding a ban, and to properly ↵Gravatar brain2006-10-261-1/+1
| | | | | | display +i overrides in the right way git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5541 e03df62e-2008-0410-955e-edbf42e46eb7
* Revert tweakGravatar brain2006-10-061-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5443 e03df62e-2008-0410-955e-edbf42e46eb7
* Make the socketengines always clear the slots on DelFd, even if the ↵Gravatar brain2006-10-061-2/+4
| | | | | | underlying queue call fails git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5437 e03df62e-2008-0410-955e-edbf42e46eb7
* Add extra debugging for socketengines, will now report OS error string when ↵Gravatar brain2006-10-061-1/+1
| | | | | | failing to remove a socket from the queue git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5436 e03df62e-2008-0410-955e-edbf42e46eb7
* Better fix to crash jamie experienced. epoll was the only socket engine ↵Gravatar w00t2006-10-021-1/+1
| | | | | | affected by this, and only under weird circumstances like a zlined user. Previous commit will work fine, this is nicer, and more complete. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5385 e03df62e-2008-0410-955e-edbf42e46eb7
* Extra debuggingGravatar brain2006-10-011-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5378 e03df62e-2008-0410-955e-edbf42e46eb7
* Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include listsGravatar brain2006-08-301-3/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7
* Get rid of SocketEngine::Wait and array-copy, change to ↵Gravatar brain2006-08-181-5/+6
| | | | | | SocketEngine::DispatchEvents git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4944 e03df62e-2008-0410-955e-edbf42e46eb7
* EventHandler class, an abstraction for raw i/oGravatar brain2006-08-181-18/+13
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4941 e03df62e-2008-0410-955e-edbf42e46eb7
* Just to mess with om's head, remove helperfuncs.h from everywhereGravatar brain2006-08-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7
* Change to using Instance->Log (InspIRCd::Log) rather than log() macroGravatar brain2006-08-111-10/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7
* Now two types of log macro, log() and ilog(). log() assumes an InspIRCd ↵Gravatar brain2006-08-111-1/+2
| | | | | | | | | 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
* Move tons more stuff into class InspIRCd*, make signal handler functions ↵Gravatar brain2006-08-101-1/+1
| | | | | | static members git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4855 e03df62e-2008-0410-955e-edbf42e46eb7
* Bail if we couldn't bind any ports (when did this get broken?)Gravatar brain2006-08-071-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4774 e03df62e-2008-0410-955e-edbf42e46eb7
* * Seperate out socket engines into derived classes of SocketEngine.Gravatar brain2006-07-191-0/+129
* 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