aboutsummaryrefslogtreecommitdiff
path: root/src/inspsocket.cpp
Commit message (Expand)AuthorAgeFilesLines
* Fix a ton of -Wsign-conversion warnings.Gravatar Peter Powell2017-11-171-3/+3
* Add support for multiple IOHooks per StreamSocketGravatar Attila Molnar2016-08-081-27/+101
* Call StreamSocket::OnDataReady() from only one place•••Call it whenever the recvq gets bigger than it was before the read Gravatar Attila Molnar2016-08-081-4/+8
* Extract code that reads data into a recvq from StreamSocket::DoRead() into Re...Gravatar Attila Molnar2016-08-081-3/+13
* Extract code that flushes the sendq from StreamSocket::DoWrite() into FlushSe...Gravatar Attila Molnar2016-08-081-10/+15
* Add StreamSocket::GetModHook() for obtaining the IOHook belonging to a given ...•••Use it to simplify logic in all modules using or providing IOHooks Gravatar Attila Molnar2016-08-081-0/+10
* Pass sendq to OnStreamSocketWriteGravatar Attila Molnar2016-08-081-1/+1
* Clean up indent in StreamSocket::DoWrite()Gravatar Attila Molnar2015-06-061-22/+6
* Call OnStreamSocketWrite() once per write event•••Do sendq flattening in SSL modules, move code for it into class SSLIOHook from core Gravatar Attila Molnar2015-06-061-21/+0
* Convert all code to use StreamSocket::SendQueue•••Let OnStreamSocketWrite see the entire sendq instead of one element at a time Gravatar Attila Molnar2015-06-061-19/+12
* Remove exception handling from StreamSocket methods calling IOHooks•••IOHooks don't throw exceptions Gravatar Attila Molnar2015-04-151-28/+3
* Dispatch EventHandler events to dedicated virtual functions•••Remove enum EventType Gravatar Attila Molnar2015-04-121-44/+54
* Use the native IOVector type in StreamSocket::DoWrite()Gravatar Attila Molnar2015-03-041-1/+1
* Remove DISABLE_WRITEV and StreamSocket code for platforms lacking writev() su...Gravatar Attila Molnar2015-03-041-38/+1
* Add SocketEngine::WriteV()Gravatar Attila Molnar2015-03-041-9/+1
* Store iovec array on the stack instead of heap allocating it for the lifetime...Gravatar Attila Molnar2015-01-101-7/+9
* Remove pointless fd == INT_MAX check from StreamSocket::DoWrite()Gravatar Attila Molnar2015-01-101-1/+1
* Remove some unnecessary NULL checksGravatar Attila Molnar2015-01-101-5/+2
* Reduce std::string::substr() usage•••substr() returns a new string while erase() and assign() modify the existing one Gravatar Attila Molnar2015-01-101-5/+4
* Remove current time parameter of the Timer constructorGravatar Attila Molnar2014-07-101-1/+1
* Kill needless #includes in source filesGravatar Attila Molnar2014-06-141-3/+0
* Change allocation of InspIRCd::Timers to be physically part of the object con...Gravatar Attila Molnar2014-03-151-1/+1
* Call DelFd() and SetFd(-1) from SocketEngine::Close(EventHandler*)Gravatar Attila Molnar2014-02-091-2/+0
* Change all socketengine methods to be staticGravatar Attila Molnar2014-02-081-19/+19
* Change SocketEngine functions that do not require an instance to be staticGravatar Attila Molnar2014-02-081-5/+5
* Allow Timers to delete themselves in Tick()Gravatar Attila Molnar2014-01-301-0/+4
* Remove whitespace and minor style changesGravatar Attila Molnar2014-01-231-1/+0
* Split IOHook into IOHook and IOHookProvider•••Create one IOHook instance for each hooked socket which contains all the hook specific data and read/write/close functions, removing the need for the "issl_session" array in SSL modules. Register instances of the IOHookProvider class in the core and use them to create specialized IOHook instances (OnConnect/OnAccept). Remove the OnHookIO hook, add a dynamic reference to ListenSocket that points to the hook provider (if any) to use for incoming connections on that socket. For outgoing connections modules still have to find the IOHookProvider they want to use themselves but instead of calling AddIOHook(hookprov), now they have to call IOHookProvider::OnConnect() after the connection has been established. Gravatar Attila Molnar2014-01-221-3/+2
* Clean up CoreException•••- Remove default constructor - Replace virtual functions returning C strings with functions returning const std::string refs Gravatar Attila Molnar2013-12-181-4/+4
* Merge insp20Gravatar attilamolnar2013-08-301-10/+12
|\
| * Use the correct socket related error messages on WindowsGravatar Adam2013-07-141-5/+5
| * Do not send too much data over SSL in one go•••Some clients fail to read it entirely and the remaining data stays in their read buffer until new data arrives Gravatar attilamolnar2013-07-071-5/+7
* | Create IOHook interface (extracted from Module)Gravatar attilamolnar2013-06-071-8/+9
* | Fix spacing in calls to LogManager::Log.Gravatar Peter Powell2013-05-191-4/+4
* | Merge insp20Gravatar attilamolnar2013-04-281-3/+3
|\|
| * Fix m_ssl_gnutls and perhaps some other things on Windows by recognizing WSAE...Gravatar Adam2013-04-161-3/+3
* | Modularize DNS•••The DNS modules are temporarily in commands/ so they're loaded automatically Thanks to Attila for helping with much of this. Gravatar Adam2013-04-261-1/+1
* | Timer changes and TimerManager enhancements•••Timer::Tick() now has a bool return value: if false is returned the timer is deleted using operator delete, otherwise, if it's a repeating timer then it's rescheduled (readded) Timers are removed from the TimerManager automatically at destruction Timers are now stored in a multimap instead of a sorted vector Gravatar attilamolnar2013-04-211-4/+5
* | Add LOG_ prefix to the log level enum values.Gravatar Peter Powell2013-04-121-10/+10
|/
* Fix incorrect substr usageGravatar newuser12012-11-061-1/+1
* Remove IncreaseOSBuffers() completelyGravatar attilamolnar2012-10-141-10/+0
* Remove no-op call to IncreaseOSBuffers() from BufferedSocket::BeginConnect()Gravatar attilamolnar2012-10-131-2/+0
* Use socketengine functions for sending and receiving data instead of plain se...Gravatar attilamolnar2012-05-281-1/+1
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-191-8/+19
* Fixed Windows build on VS 2010Gravatar Adam2011-04-101-1/+2
* Block writes to pending-connect socketGravatar Daniel De Graaf2010-03-271-1/+1
* Fix some more incorrect socket use•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12585 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-03-021-5/+0
* Don't try quite so hard to writev() the entire buffer in one go•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12583 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-03-021-4/+7
* Dump sendq before closing socket•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12469 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-151-0/+2
* Delink servers using an SSL module that is being reloaded•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12367 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-031-0/+1