in reply to
Re^7: Timeout for an established connection
in thread Timeout for an established connection
Thank you. This is something I have long done.
What OS are you using?
It looks like all linux kernels since 2.6.32 has implemented TCP_USER_TIMEOUT; which would definitely be the better option if it is available to you.
This is something I have long done.
Hm. Makes me wonder why you are asking here, if you already have a solution?
Maybe this is an error in the syntax? setsockopt($sock, 6, 18, pack("QQ", 5, 0))
That does look suspect to me.
According to this (4th post), the parameter is the address of an int containing the timeout in milliseconds. Given you are on a 64-bit build I'd expect to use something like this in Perl:
setsockopt( $sock, 6, 18, pack( "Q", 5000 ) )
my $userTimeout = 5000;
setsockopt( $sock, 6, 18, \$userTimeout );
A Programming Language, 1962
Programming the 1900 series in COBOL, 1974
Algorithms + Data Structures = Programs, 1976
The C Programming Language, 1978
System V - Interface definition, 1986
Z80 Assembly Language Programming, 1979
TheSOURCE User's Manual, 1979
The C Primer, 1983
Interactive Fortran 77, A Hands on Approach, 1984
Perl.1 man page, 1991
Results (351 votes),