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 : be...@petrovitsch.priv.at
There is no cloud, just other people computers. - FSFE
                     LUGA : http://www.luga.at


Reply via email to