X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=winnet.c;h=1663148f39e91882a8a99811dc5a82d30300942d;hb=7fbbad0ce1216e66fccab818c0349e2413a3898c;hp=8e1c2a1ddc743da175305b605b5caf1d73e992fa;hpb=555ded77406b45c6e15cc37bea80fd195bcda9fd;p=PuTTY.git diff --git a/winnet.c b/winnet.c index 8e1c2a1d..1663148f 100644 --- a/winnet.c +++ b/winnet.c @@ -439,7 +439,7 @@ Socket sk_register(void *sock, Plug plug) } 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, @@ -494,6 +494,11 @@ Socket sk_new(SockAddr addr, int port, int privport, int oobinline, 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. */ @@ -964,7 +969,7 @@ int select_result(WPARAM wParam, LPARAM lParam) 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();