Re: Linux TCP/IP stack.

Andrew Dunstan (andrewd@writeme.com)
Sun, 18 Jul 1999 08:53:22 -0400


Alan wrote:
>AFAIK Linux 2.0.x (x<36 or so) has only one actual tcp protocol violation
>that was fixed about 2.0.36. Thats an obscure rule about reserved bits
always
>being set to zero that can only be triggered by the other end violating the
>spec (legitimately if running some experimental research work).

here's a snippet from the postfix-users mailing list (I'm patching postfix
to use poll instead of select, principally for the benefit of Solaris users
(like a current client :-) )

Andrew:
>According to Stevens "Unix Network Programming" 2nd ed. v.1 pp151-153 the
>arrival of something like HOSTUNREACHABLE would mark the socket as
readable,
>and a read on it will fail with errno set appropriately, but only arrival
of
>OOB data will mark an exception condition on the socket.

Wietse Venema:
>Postfix has to run on real machines in the real world, and therefore
>we cannot blindly use Stevens or the RFC as gospel.
>The select() calls have a mask for exceptions simply because of LINUX.

Andrew:
>What does Linux do differently?

Wietse:
>Under some conditions LINUX sets the exception bits instead of the
>readable bits like everyone else does. This broke the satan port
>scanner.

So ... is this still the behaviour? If so, is it due to the kernel TCP/IP
stack? If so, should it be modified?

cheers

andrew
(replies just to the list are fine)

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