m_reusable = false;
m_broadcast = false;
m_dobind = true;
-
+ m_initialRecvBufferSize = -1;
+ m_initialSendBufferSize = -1;
+
assert(gs_gui_functions);
/* Per-socket GUI-specific initialization */
m_ok = gs_gui_functions->Init_Socket(this);
setsockopt(m_fd, SOL_SOCKET, SO_REUSEADDR, (const char*)&arg, sizeof(arg));
}
+ if (m_initialRecvBufferSize >= 0)
+ setsockopt(m_fd, SOL_SOCKET, SO_RCVBUF, (const char*)&m_initialRecvBufferSize, sizeof(m_initialRecvBufferSize));
+ if (m_initialSendBufferSize >= 0)
+ setsockopt(m_fd, SOL_SOCKET, SO_SNDBUF, (const char*)&m_initialSendBufferSize, sizeof(m_initialSendBufferSize));
+
// If a local address has been set, then we need to bind to it before calling connect
if (m_local && m_local->m_addr)
{