Re: A call to revise sockets behaviour

From: Eric Dumazet
Date: Mon Jul 29 2013 - 13:43:06 EST


On Mon, 2013-07-29 at 15:47 +0000, Artem S. Tashkinov wrote:

> A wine developer clearly showed that this option simply doesn't work.
>
> http://bugs.winehq.org/show_bug.cgi?id=26031#c21
>
> Output of strace:
> getsockopt(24, SOL_SOCKET, SO_REUSEADDR, [0], [4]) = 0
> setsockopt(24, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
> bind(24, {sa_family=AF_INET, sin_port=htons(43012), sin_addr=inet_addr("0.
> 0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)

Its clear that some other socket did not use SO_REUSADDR

All sockets using a given port _must_ have use SO_REUSADDR to allow this
port being reused.




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/