From 5e4dc7900be5b158776f857167772d9c73c54a0e Mon Sep 17 00:00:00 2001 From: snar Date: Fri, 24 Jun 2011 11:51:36 +0000 Subject: [PATCH] yet another fix. --- sx_maxsockbuf.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/sx_maxsockbuf.c b/sx_maxsockbuf.c index 1bf6e5a..0e4a480 100644 --- a/sx_maxsockbuf.c +++ b/sx_maxsockbuf.c @@ -43,11 +43,8 @@ sx_maxsockbuf(int s, int dir) if(optval==(hiconf+loconf)/2) break; optval=(hiconf+loconf)/2; }; - if(optval>SX_MAXSOCKBUF_MAX) { - if(phase==0) { - phase=1; optval>>=1; continue; - } else break; - }; + if(optval>SX_MAXSOCKBUF_MAX && phase==0) + break; if(setsockopt(s,SOL_SOCKET,dir,(void*)&optval,sizeof(optval))==-1) { @@ -69,10 +66,6 @@ sx_maxsockbuf(int s, int dir) } else if(phase==1) { phase=2; optval-=2048; continue; } else break; - } else if((optval<<1)>=SX_MAXSOCKBUF_MAX) { - /* ... and getsockopt not failed and voptval>=optval. Do not allow - * to increase sockbuf too much even in case OS permits it */ - break; }; };