Re: SIGHUP on connect

From: Bernd Petrovitsch
Date: Thu Oct 29 2020 - 16:49:19 EST


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