| Commit message (Expand) | Author | Age | Files | Lines |
| * | Deduplicate error handling in the socket engines. | Peter Powell | 2017-10-22 | 1 | -10/+1 |
| * | Convert GetMaxFds() to size_t and deduplicate setting code. | Peter Powell | 2017-10-22 | 1 | -6/+1 |
| * | Merge pull request #1337 from SaberUK/master+merge•••Merge v2.0.23 and v2.0.24 into master. | Peter Powell | 2017-07-12 | 1 | -3/+7 |
| |\ |
|
| | * | Merge v2.0.23 and v2.0.24 into master. | Peter Powell | 2017-07-09 | 1 | -3/+7 |
| | |\ |
|
| | | * | socketengine_epoll: use getrlimit not ulimit | Adam | 2016-11-22 | 1 | -4/+5 |
| | | * | socketengine_epoll Initialize CurrentSetSize (only used by m_httpd_stats) | Attila Molnar | 2014-02-05 | 1 | -0/+1 |
| * | | | Improve and centralize socket engine event counters.•••The write counters were close to useless because they were only
incremented on a write "event" which is only triggered when writing
would block.
Read handling was a little more useful in that all reads must happen
through the socket engine, so these were happening at the correct time,
but we can clean this up by doing it in the SE itself rather than each
platform port.
This means that both read and write events are now easily and usefully
defined as "a syscall of either read or write was attempted".
We also count empty read and write events as being an event, because
they still were an attempt to poll a socket in some way. This may help
to identify "bad" code which is repeatedly trying to read a socket for
some reason.
Lastly, we check for failed read/write calls, and log them as an error
event. A lot of the time, this is how sockets are determined as being
disconnected (ie. at read/write time).
While we're at it, split Update() in two to make the calls more
self-describing. This has no real impact since only one call is made at
a time anyway.
| Robin Burchell | 2017-07-11 | 1 | -2/+0 |
| |/ / |
|
| * | | socketengine_epoll Remove unused #define EP_DELAY 5 | Attila Molnar | 2016-08-11 | 1 | -1/+0 |
| * | | Dispatch EventHandler events to dedicated virtual functions•••Remove enum EventType
| Attila Molnar | 2015-04-12 | 1 | -4/+4 |
| * | | Kill needless #includes in source files | Attila Molnar | 2014-06-14 | 1 | -4/+1 |
| * | | Change the number reported by SocketEngine::GetMaxFds() to be informal•••Do not exit if we can't determine it
| Attila Molnar | 2014-06-07 | 1 | -11/+2 |
| * | | socketengine_epoll Pass a dummy value to epoll_create() that does not depend ...•••From man epoll:
Since Linux 2.6.8, the size argument is unused, but must be greater than zero. (The kernel dynamically sizes the required data structures without needing this initial hint.)
| Attila Molnar | 2014-06-07 | 1 | -2/+3 |
| * | | Relax fd bounds checking•••We can cope with fds greater than SocketEngine::GetMaxFds() since 3752b3f59d5216d7dc6221a361efc76b9ad2273d
| Attila Molnar | 2014-06-07 | 1 | -4/+4 |
| * | | Store the EventHandler* in the kevent/epoll_event/portev struct•••This removes the need to call GetRef() for every socket in DispatchEvents()
| Attila Molnar | 2014-02-09 | 1 | -10/+7 |
| * | | Change all socketengine methods to be static | Attila Molnar | 2014-02-08 | 1 | -30/+18 |
| * | | Move socketengine stats into a new class | Attila Molnar | 2014-02-08 | 1 | -5/+5 |
| * | | Update SocketEngine::CurrentSetSize in AddFdRef()/DelFdRef() | Attila Molnar | 2014-02-08 | 1 | -3/+0 |
| * | | Rename SocketEngine::AddFd() and DelFd() to AddFdRef() and DelFdRef() | Attila Molnar | 2014-02-08 | 1 | -2/+2 |
| * | | Move variables in socketengines•••Move timespec to DispatchEvents() in kqueue, there is no reason for it to be a member variable
| Attila Molnar | 2014-02-08 | 1 | -2/+2 |
| * | | Replace SocketEngine::GetName() with INSPIRCD_SOCKETENGINE_NAME define | Attila Molnar | 2014-02-08 | 1 | -6/+0 |
| * | | socketengine_epoll Remove needless initialization of epoll_event when removin... | Attila Molnar | 2014-02-05 | 1 | -2/+3 |
| * | | Fix oversight in 3752b3f59d5216d7dc6221a361efc76b9ad2273d | Attila Molnar | 2014-02-05 | 1 | -1/+3 |
| * | | Coding style changes in socketengines | Adam | 2014-02-04 | 1 | -3/+3 |
| * | | New socketengine stuff:•••Use vectors that grow as necessary instead of mass allocating everything at once
Rework poll engine logic to make sense
| Adam | 2014-02-04 | 1 | -22/+21 |
| * | | Merge insp20 | attilamolnar | 2013-08-30 | 1 | -2/+2 |
| |\| |
|
| | * | Fix low risk crash when we can't determine maximum open socket count. | Peter Powell | 2013-07-07 | 1 | -2/+2 |
| * | | Fix spacing in calls to LogManager::Log. | Peter Powell | 2013-05-19 | 1 | -10/+10 |
| * | | Add LOG_ prefix to the log level enum values. | Peter Powell | 2013-04-12 | 1 | -11/+11 |
| |/ |
|
| * | Replace printf(_c) with iostream | ChrisTX | 2012-10-14 | 1 | -3/+4 |
| * | epoll: make sure EPOLLET flag does not get clobbered•••EPOLLET is the highest bit, so storing EPOLLET in a signed value leads to
undefined behaviour.
| William Pitcock | 2012-05-20 | 1 | -4/+4 |
| * | Replace copyright headers with headers granting specific authors copyright | Robby- | 2012-04-19 | 1 | -8/+15 |
| * | DelFd should not fail, it will leave a bad dangling pointer in that case•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12584 e03df62e-2008-0410-955e-edbf42e46eb7
| danieldg | 2010-03-02 | 1 | -7/+5 |
| * | Log duplicate UUID events a bit better•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12580 e03df62e-2008-0410-955e-edbf42e46eb7
| danieldg | 2010-03-02 | 1 | -0/+3 |
| * | 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
| danieldg | 2010-02-11 | 1 | -0/+4 |
| * | Remove excessive gettimeofday system calls•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12293 e03df62e-2008-0410-955e-edbf42e46eb7
| danieldg | 2010-01-18 | 1 | -0/+1 |
| * | ...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
| brain | 2010-01-11 | 1 | -1/+1 |
| * | 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
| danieldg | 2009-09-30 | 1 | -1/+33 |
| * | 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
| danieldg | 2009-09-26 | 1 | -4/+16 |
| * | 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
| danieldg | 2009-09-26 | 1 | -63/+65 |
| * | 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
| danieldg | 2009-09-21 | 1 | -4/+3 |
| * | 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
| psychon | 2009-03-15 | 1 | -1/+1 |
| * | Update copyrights for 2009.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
| w00t | 2009-01-02 | 1 | -1/+1 |
| * | 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
| w00t | 2008-09-11 | 1 | -1/+1 |
| * | 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
| w00t | 2008-08-25 | 1 | -1/+0 |
| * | Forward port r10234, thanks psychon•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10235 e03df62e-2008-0410-955e-edbf42e46eb7
| w00t | 2008-08-23 | 1 | -1/+1 |
| * | 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
| w00t | 2008-07-20 | 1 | -4/+4 |
| * | 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
| special | 2008-06-01 | 1 | -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
| peavey | 2008-06-01 | 1 | -1/+11 |
| * | Debug on out of range FD.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9776 e03df62e-2008-0410-955e-edbf42e46eb7
| w00t | 2008-05-19 | 1 | -1/+1 |
| * | Initialise this (valgrind warning)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9384 e03df62e-2008-0410-955e-edbf42e46eb7
| w00t | 2008-04-06 | 1 | -0/+1 |