Hi all!
On 29/10/2020 14:10, Michael J. Baars wrote:
[...]
> According to manual page socket(7), SO_REUSEADDR allows for local addresses
> to be reused for binding. I've tested this socket option with the WAN
> address, it
> appears the problem is solved for both local and non-local connections.
Yup.
> I also found the the SO_LINGER socket option to be useful in some way. By
> default, SO_LINGER is set to 0, so you would think that lingering connections
> were out
> of the question. However, an enabled linger with a l_onoff = 1 and a l_linger
> = 0 seems to work a lot better than a disabled linger with a l_onoff = 0 and a
> l_linger = 0.
>
> Which option would you use?
I never used SO_LINGER before.
>From the description in `man 7 socket`, active SO_LINGER just
makes shutdown() to block if not all data has been transmitted
(and ACKed?).
close() on a socket calls shutdown() automatically (unless
the shutdown() has been already called).
The timeout which you're application runs into
applies after shutting down/closing the connection.
MfG,
Bernd
--
Bernd Petrovitsch Email : [email protected]
There is no cloud, just other people computers. - FSFE
LUGA : http://www.luga.at