From bed0c38419b46ff23b36f1edb7e5aca6a86c7c8e Mon Sep 17 00:00:00 2001 From: brain Date: Thu, 15 Apr 2004 09:09:17 +0000 Subject: Fixes for nonblocking socket issues git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@593 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/connection.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/connection.cpp') diff --git a/src/connection.cpp b/src/connection.cpp index 7c5468b42..c2b67412a 100644 --- a/src/connection.cpp +++ b/src/connection.cpp @@ -178,6 +178,12 @@ bool connection::AddIncoming(int fd,char* targethost) connector.SetServerName(targethost); connector.SetDescriptor(fd); connector.SetState(STATE_NOAUTH_INBOUND); + int flags = fcntl(fd, F_GETFL, 0); + fcntl(fd, F_SETFL, flags | O_NONBLOCK); + int sendbuf = 32768; + int recvbuf = 32768; + setsockopt(fd,SOL_SOCKET,SO_SNDBUF,(const void *)&sendbuf,sizeof(sendbuf)); + setsockopt(fd,SOL_SOCKET,SO_RCVBUF,(const void *)&recvbuf,sizeof(sendbuf)); this->connectors.push_back(connector); return true; } -- cgit v1.3.1-10-gc9f91