From d2ee52d171596bb3d6771d940c3a007545a133b1 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Mon, 23 Dec 1996 23:14:17 +0000 Subject: A version of setvbuf that works. svn path=/trunk/; revision=679 --- socket.c | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/socket.c b/socket.c index fbe26ef7..39b9f846 100644 --- a/socket.c +++ b/socket.c @@ -74,23 +74,8 @@ FILE *sockopen(char *host, int clientPort) } fp = fdopen(sock, "r+"); -#ifdef __SETVBUF_WORKS_OK__ - /* - * For unknown reasons, this results in horrible lossage under Linux. - * To see this, condition in this line, generate a test pattern - * of 8K, fetch it, and watch it garble the test pattern. - * I think there's a bug in Linux stdio lurking here. - */ - { - static char sbuf[INTERNAL_BUFSIZE]; - setvbuf(fp, sbuf, _IOLBF, INTERNAL_BUFSIZE); - } -#endif /* __SETVBUF_WORKS_OK__ */ - -#if !defined(__SETVBUF_WORKS_OK__) && defined(HAVE_SETLINEBUF) - /* this on the other hand works OK under Linux */ - setlinebuf(fp); -#endif + /* the point of all this mishigoss ... dynamic per-stream buffering */ + setvbuf(fp, NULL, _IOLBF, INTERNAL_BUFSIZE); return(fp); } -- cgit v1.2.3