In message <_A4271@delegate-en.ML_> on 12/22/08(14:31:53)
you "Sunil S" <firstname.lastname@example.org> wrote:
|I run a specialist (tcprelay) on one of my boxes. Clients are able to
|connect to it for a short duration (a couple of minutes maximum) after
|which connection to client is closed unexpectedly.
|Earlier the service was hosted with 9.8.4-pre1 with a patch you had
|supplied with additional option "-Etw".
|I had seen that 9.9.0 retains the code for this option. If I remove the
|"-Etw" option, the random disconnection does not happen. But, user
|is able to connect beyond the specified time window too.
|Mail from delegate about the problem (edited to remove IP addresses) is
|quoted at the bottom. Please help.
I could reproduce it on Linux. It was caused by the stack-overflow in the
small stack of a thread to watch the timeout. It will be fixed by extending
the stack as the enclosed patch in the next release (9.9.1-pre4).
9 9 Yutaka Sato <email@example.com> http://delegate.org/y.sato/
( ~ ) National Institute of Advanced Industrial Science and Technology
_< >_ 1-1-4 Umezono, Tsukuba, Ibaraki, 305-8568 Japan
Do the more with the less -- B. Fuller
*** src/service.c Sun Dec 21 21:00:31 2008
--- /nfs/delegate.all/service.c Mon Dec 22 17:55:39 2008
*** 1963,1969 ****
--- 1963,1972 ----
tid = thread_fork(0,STX_tid,"TSwatcher",(IFUNCP)TSwatcher,Conn,sy);
+ tid = thread_fork(0x40000,STX_tid,"TSwatcher",(IFUNCP)TSwatcher,Conn,sy);
rcode = (*svfunc)(Conn,0,0,FromC,ToC,DST_PROTO,DST_HOST,DST_PORT,"");