[Ntp] [Errata Verified] RFC5905 (6207)
RFC Errata System <rfc-editor@rfc-editor.org> Mon, 26 September 2022 00:33 UTC
Return-Path: <wwwrun@rfcpa.amsl.com>
X-Original-To: ntp@ietfa.amsl.com
Delivered-To: ntp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8B0B9C14F744; Sun, 25 Sep 2022 17:33:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.658
X-Spam-Level:
X-Spam-Status: No, score=-6.658 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id l8bd_lWQvg28; Sun, 25 Sep 2022 17:33:25 -0700 (PDT)
Received: from rfcpa.amsl.com (rfc-editor.org [50.223.129.200]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B8F85C14F6EB; Sun, 25 Sep 2022 17:33:25 -0700 (PDT)
Received: by rfcpa.amsl.com (Postfix, from userid 499) id 9D3EB4C956; Sun, 25 Sep 2022 17:33:25 -0700 (PDT)
To: tphan25@vt.edu, mills@udel.edu, jrmii@isc.org, jack.burbank@jhuapl.edu, william.kasch@jhuapl.edu
From: RFC Errata System <rfc-editor@rfc-editor.org>
Cc: ek.ietf@gmail.com, iesg@ietf.org, ntp@ietf.org, iana@iana.org, rfc-editor@rfc-editor.org
Content-Type: text/plain; charset="UTF-8"
Message-Id: <20220926003325.9D3EB4C956@rfcpa.amsl.com>
Date: Sun, 25 Sep 2022 17:33:25 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/ntp/nwD7eBgDvsdyhAD4bMn8k_6FBHE>
Subject: [Ntp] [Errata Verified] RFC5905 (6207)
X-BeenThere: ntp@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Network Time Protocol <ntp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ntp>, <mailto:ntp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ntp/>
List-Post: <mailto:ntp@ietf.org>
List-Help: <mailto:ntp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ntp>, <mailto:ntp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 26 Sep 2022 00:33:30 -0000
The following errata report has been verified for RFC5905, "Network Time Protocol Version 4: Protocol and Algorithms Specification". -------------------------------------- You may review the report below and at: https://www.rfc-editor.org/errata/eid6207 -------------------------------------- Status: Verified Type: Technical Reported by: Tam Phan <tphan25@vt.edu> Date Reported: 2020-06-08 Verified by: Erik Kline (IESG) Section: A.5.5.1 Original Text ------------- /* * Find the largest contiguous intersection of correctness * intervals. Allow is the number of allowed falsetickers; * found is the number of midpoints. Note that the edge values * are limited to the range +-(2 ^ 30) < +-2e9 by the timestamp * calculations. */ low = 2e9; high = -2e9; for (allow = 0; 2 * allow < n; allow++) { /* * Scan the chime list from lowest to highest to find * the lower endpoint. */ found = 0; chime = 0; for (i = 0; i < n; i++) { chime -= s.m[i].type; if (chime >= n - found) { low = s.m[i].edge; break; } if (s.m[i].type == 0) found++; } /* * Scan the chime list from highest to lowest to find * the upper endpoint. */ chime = 0; for (i = n - 1; i >= 0; i--) { chime += s.m[i].type; if (chime >= n - found) { high = s.m[i].edge; break; } if (s.m[i].type == 0) found++; } Mills, et al. Standards Track [Page 91] RFC 5905 NTPv4 Specification June 2010 /* * If the number of midpoints is greater than the number * of allowed falsetickers, the intersection contains at * least one truechimer with no midpoint. If so, * increment the number of allowed falsetickers and go * around again. If not and the intersection is * non-empty, declare success. */ if (found > allow) continue; if (high > low) break; } Corrected Text -------------- /* * Find the largest contiguous intersection of correctness * intervals. Allow is the number of allowed falsetickers; * found is the number of midpoints. Note that the edge values * are limited to the range +-(2 ^ 30) < +-2e9 by the timestamp * calculations. */ low = 2e9; high = -2e9; for (allow = 0; 2 * allow < n; allow++) { /* * Scan the chime list from lowest to highest to find * the lower endpoint. */ found = 0; chime = 0; for (i = 0; i < n; i++) { chime -= s.m[i].type; if (chime >= n - allow) { low = s.m[i].edge; break; } if (s.m[i].type == 0) found++; } /* * Scan the chime list from highest to lowest to find * the upper endpoint. */ chime = 0; for (i = n - 1; i >= 0; i--) { chime += s.m[i].type; if (chime >= n - allow) { high = s.m[i].edge; break; } if (s.m[i].type == 0) found++; } Mills, et al. Standards Track [Page 91] RFC 5905 NTPv4 Specification June 2010 /* * If the number of midpoints is greater than the number * of allowed falsetickers, the intersection contains at * least one truechimer with no midpoint. If so, * increment the number of allowed falsetickers and go * around again. If not and the intersection is * non-empty, declare success. */ if (found > allow) continue; if (high > low) break; } Notes ----- The algorithm described in section 11.2.3 is not properly written here; we compare c to n - f in the algorithm, but f != found; f corresponds to the "allowed" falsetickers. This algorithm implementation results in the lower and upper bounds unchanging throughout the described loop, but this change should fix the implementation. --- [INT AD notes] For analysis and further discussion see https://mailarchive.ietf.org/arch/msg/ntp/zJNoHvZ08SPX-3kwflMK7PIReFo/ especially the one or two addition issues identified. -------------------------------------- RFC5905 (draft-ietf-ntp-ntpv4-proto-13) -------------------------------------- Title : Network Time Protocol Version 4: Protocol and Algorithms Specification Publication Date : June 2010 Author(s) : D. Mills, J. Martin, Ed., J. Burbank, W. Kasch Category : PROPOSED STANDARD Source : Network Time Protocols Area : Internet Stream : IETF Verifying Party : IESG
- [Ntp] [Errata Verified] RFC5905 (6207) RFC Errata System