commit bd2e802053c8fc6babf4c2bb6e33912f1c0aee9d
parent c5eb686096c8e5fef13230867ea7ce494b0376d7
Author: rsc <devnull@localhost>
Date: Wed, 16 Jun 2004 03:50:28 +0000
DAMN BERKELEY.
Diffstat:
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/lib9/announce.c b/src/lib9/announce.c
@@ -4,6 +4,7 @@
#include <sys/socket.h>
#include <netinet/in.h>
+#include <netinet/tcp.h>
#include <sys/un.h>
#include <errno.h>
@@ -119,7 +120,7 @@ Success:
int
p9listen(char *dir, char *newdir)
{
- int fd;
+ int fd, one;
if((fd = _p9netfd(dir)) < 0){
werrstr("bad 'directory' in listen: %s", dir);
@@ -129,6 +130,9 @@ p9listen(char *dir, char *newdir)
if((fd = accept(fd, nil, nil)) < 0)
return -1;
+ one = 1;
+ setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (char*)&one, sizeof one);
+
putfd(newdir, fd);
return fd;
}