Here, think I got it :) Just run 'make; make run'
Thank you for your help. On Thu, 2020-10-29 at 21:48 +0100, Bernd Petrovitsch wrote: > 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
so_reuseaddr and so_linger.tar.xz
Description: application/xz-compressed-tar