* | Inspire Internet Relay Chat Daemon |
* +------------------------------------+
*
- * InspIRCd: (C) 2002-2007 InspIRCd Development Team
+ * InspIRCd: (C) 2002-2008 InspIRCd Development Team
* See: http://www.inspircd.org/wiki/index.php/Credits
*
* This program is free but copyrighted software; see
* ---------------------------------------------------
*/
+/* $Core: libIRCDinspsocket */
+
#include "socket.h"
#include "inspstring.h"
#include "socketengine.h"
int sendbuf = 32768;
int recvbuf = 32768;
if(setsockopt(nfd,SOL_SOCKET,SO_SNDBUF,(const char *)&sendbuf,sizeof(sendbuf)) || setsockopt(nfd,SOL_SOCKET,SO_RCVBUF,(const char *)&recvbuf,sizeof(sendbuf)))
- this->Instance->Log(DEFAULT, "Could not increase SO_SNDBUF/SO_RCVBUF for socket %u", GetFd());
+ {
+ //this->Instance->Log(DEFAULT, "Could not increase SO_SNDBUF/SO_RCVBUF for socket %u", GetFd());
+ ; // do nothing. I'm a little sick of people trying to interpret this message as a result of why their incorrect setups don't work.
+ }
}
/* Most irc servers require you to specify the ip you want to bind to.
}
j++;
}
+ Instance->Log(DEBUG,"nothing in the config to bind()!");
return true;
}
}
this->SetQueues(this->fd);
}
+
+ Instance->Log(DEBUG,"BufferedSocket::DoConnect success");
return true;
}
return (fd < 0);
}
-void SocketTimeout::Tick(time_t now)
+void SocketTimeout::Tick(time_t)
{
+ ServerInstance->Log(DEBUG,"SocketTimeout::Tick");
+
if (ServerInstance->SE->GetRef(this->sfd) != this->sock)
return;
}
else
#endif
+ {
+ // FIX: we were doing this for IPv6 connections as well, which was fucking recvip..
+ // Add brackets to make this a bit clearer. -- w00t (Jan 15, 2008)
+ recvip = inet_ntoa(((sockaddr_in*)client)->sin_addr);
+ }
+
Instance->SE->NonBlocking(incoming);
- recvip = inet_ntoa(((sockaddr_in*)client)->sin_addr);
this->OnIncomingConnection(incoming, (char*)recvip.c_str());
if (this->IsIOHooked)
}
bool BufferedSocket::OnConnected() { return true; }
-void BufferedSocket::OnError(BufferedSocketError e) { return; }
+void BufferedSocket::OnError(BufferedSocketError) { return; }
int BufferedSocket::OnDisconnect() { return 0; }
-int BufferedSocket::OnIncomingConnection(int newfd, char* ip) { return 0; }
+int BufferedSocket::OnIncomingConnection(int, char*) { return 0; }
bool BufferedSocket::OnDataReady() { return true; }
bool BufferedSocket::OnWriteReady() { return true; }
void BufferedSocket::OnTimeout() { return; }