}
Socket sk_new(SockAddr addr, int port, int privport, int oobinline,
- Plug plug)
+ int nodelay, Plug plug)
{
static struct socket_function_table fn_table = {
sk_tcp_plug,
setsockopt(s, SOL_SOCKET, SO_OOBINLINE, (void *) &b, sizeof(b));
}
+ if (nodelay) {
+ BOOL b = TRUE;
+ setsockopt(s, IPPROTO_TCP, TCP_NODELAY, (void *) &b, sizeof(b));
+ }
+
/*
* Bind to local address.
*/
memset(&isa, 0, sizeof(struct sockaddr_in));
err = 0;
- t = accept(s->s,&isa,&addrlen);
+ t = accept(s->s,(struct sockaddr *)&isa,&addrlen);
if (t == INVALID_SOCKET)
{
err = WSAGetLastError();