Re: [tcpm] [Technical Errata Reported] RFC7413 (4239)
Matthew Luckie <mjl@caida.org> Sat, 24 January 2015 03:57 UTC
Return-Path: <mjl@luckie.org.nz>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4B7DA1A00DC for <tcpm@ietfa.amsl.com>; Fri, 23 Jan 2015 19:57:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OXLry8vLHXNe for <tcpm@ietfa.amsl.com>; Fri, 23 Jan 2015 19:57:56 -0800 (PST)
Received: from cdptpa-oedge-vip.email.rr.com (cdptpa-outbound-snat.email.rr.com [107.14.166.232]) by ietfa.amsl.com (Postfix) with ESMTP id 317141A00D1 for <tcpm@ietf.org>; Fri, 23 Jan 2015 19:57:55 -0800 (PST)
Received: from [76.167.133.166] ([76.167.133.166:16915] helo=spandex.luckie.org.nz) by cdptpa-oedge02 (envelope-from <mjl@luckie.org.nz>) (ecelerity 3.5.0.35861 r(Momo-dev:tip)) with ESMTP id 86/40-29014-04813C45; Sat, 24 Jan 2015 03:57:55 +0000
Received: from mjl by spandex.luckie.org.nz with local (Exim 4.85 (FreeBSD)) (envelope-from <mjl@luckie.org.nz>) id 1YErr5-0008TG-Gi; Fri, 23 Jan 2015 19:57:51 -0800
Date: Fri, 23 Jan 2015 19:57:51 -0800
From: Matthew Luckie <mjl@caida.org>
To: Joe Touch <touch@isi.edu>
Message-ID: <20150124035751.GA32450@spandex.luckie.org.nz>
References: <20150122232420.282F5187A98@rfc-editor.org> <54C2DE6E.2010505@isi.edu>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha1"; protocol="application/pgp-signature"; boundary="r5Pyd7+fXNt84Ff3"
Content-Disposition: inline
In-Reply-To: <54C2DE6E.2010505@isi.edu>
User-Agent: Mutt/1.5.23 (2014-03-12)
Sender: Matthew Luckie <mjl@luckie.org.nz>
X-RR-Connecting-IP: 107.14.168.130:25
X-Cloudmark-Score: 0
Archived-At: <http://mailarchive.ietf.org/arch/msg/tcpm/GY5r0qvB__ckJ9v5W9AKKjTgiEs>
X-Mailman-Approved-At: Sun, 25 Jan 2015 10:41:54 -0800
Cc: tcpm@ietf.org, arvind@google.com, mls.ietf@gmail.com, RFC Errata System <rfc-editor@rfc-editor.org>
Subject: Re: [tcpm] [Technical Errata Reported] RFC7413 (4239)
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 24 Jan 2015 03:57:58 -0000
> > Notes > > ----- > > A Nil fast-open option has an option length of 2. > > Agreed. > > > A length field of zero would mean an invalid TCP option. > > Disagree. The correct reason is, IMO: > > The Nil option has no bytes beyond the Kind and Length > fields required in all TCP options, and the Length field > includes the space used for Kind and Length. > > The interpretation of an option with a 0 length should not be discussed > in the errata or future updates to this doc; it is out of scope. > > (AFAICT, if it were observed, the entire segment would have to be deemed > invalid, not just that individual option. But that's not germane to this > errata). I do not think that the reasoning behind this errata needs to be discussed in future updates to the RFC (I put my reasoning in the Notes field of the errata form) but I absolutely believe that a TCP option defined after RFC793 with a length of zero is an invalid option that will cause a TCP receiver to stop processing the options. https://tools.ietf.org/html/rfc793 <-- page 17 Options: variable Options may occupy space at the end of the TCP header and are a multiple of 8 bits in length. All options are included in the checksum. An option may begin on any octet boundary. There are two cases for the format of an option: Case 1: A single octet of option-kind. Case 2: An octet of option-kind, an octet of option-length, and the actual option-data octets. The option-length counts the two octets of option-kind and option-length as well as the option-data octets. https://tools.ietf.org/html/rfc5925 <-- page 8 (discussing a different option type, but all options post 793 are TLVs, and this RFC specifically says that the segment should be discarded. granted that it is a different TCP option) o Length: An unsigned 1-byte field indicating the length of the option in bytes, including the Kind, Length, KeyID, RNextKeyID, and MAC fields. >> The Length value MUST be greater than or equal to 4. When the Length value is less than 4, TCP MUST discard the segment. === Matthew
- [tcpm] [Technical Errata Reported] RFC7413 (4239) RFC Errata System
- Re: [tcpm] [Technical Errata Reported] RFC7413 (4… Joe Touch
- Re: [tcpm] [Technical Errata Reported] RFC7413 (4… Matthew Luckie
- Re: [tcpm] [Technical Errata Reported] RFC7413 (4… Matthew Luckie
- Re: [tcpm] [Technical Errata Reported] RFC7413 (4… Joe Touch
- Re: [tcpm] [Technical Errata Reported] RFC7413 (4… Joe Touch
- [tcpm] [Errata Verified] RFC7413 (4239) RFC Errata System