[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200612211442.38493@strip-the-willow>
Date: Thu, 21 Dec 2006 14:42:38 +0000
From: Gerrit Renker <gerrit@....abdn.ac.uk>
To: David Miller <davem@...emloft.net>
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH][RFC] tcp: fix ambiguity in the `before' relation
Hi David,
many thanks for taking the matter seriously and investigating
it further.
| I went over this patch and analysis a dozen times, because I
| couldn't believe something like this has been broken for
| so long :-)
It gave me some grief too, when I looked at DCCP sequence numbers %-)
RFC 1982 provides some definitions, but leaves the case a = (b + 2^31) % 2^32
open to the implementation (suggests `undefined').
I think the new definition is more conformant with RFC 1982 than the old one,
since the ambiguity is now removed with regard to a = (b + 2^31) % 32, and it
is not "unnecessarily burdensome to implement" (section 3.2 of RFC 1982).
| Even BSD suffers of this issue, since the beginning. See
| SEQ_LT() in tcp_seq.h, and it seems that BSD's timestamp
| sequence checking has the issue too (see TSTMP_LT() macro
| in OpenBSD's tcp_input.c)
I didn't know about OpenBSD, but in Stevens vol 2 (sec. 24.7) it is
already defined in this way.
Best regards & merry Christmas
Gerrit
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists