[Git][NTPsec/ntpsec][master] devel and packaging

Matt Selsky gitlab at mg.gitlab.com
Mon Feb 4 00:40:28 UTC 2019


Matt Selsky pushed to branch master at NTPsec / ntpsec


Commits:
f754dc90 by James Browning at 2019-02-04T00:37:04Z
devel and packaging

- - - - -


8 changed files:

- devel/hacking.adoc
- devel/ntpv5.adoc
- devel/nts.adoc
- devel/testing.adoc
- devel/tour.adoc
- devel/y2k.adoc
- packaging/README.adoc
- packaging/packaging.adoc


Changes:

=====================================
devel/hacking.adoc
=====================================
@@ -1,4 +1,4 @@
-= How-to for NTPsec hackers =
+= How-to for NTPsec hackers
 
 Annoying but necessary legalese:
 
@@ -13,7 +13,7 @@ and project conventions.
 You may also find the articles at https://blog.ntpsec.org/
 interesting.
 
-== Choice of language ==
+== Choice of language
 
 In order to reduce the complexity of maintenance and testing
 due to multiple languages, we hold the set of allowed languages
@@ -32,7 +32,7 @@ it's easier to verify portability in Python than it is in sh.
 Please read our C and Python guidelines carefully; they're not just
 about style, they're serious measures to reduce defect rates.
 
-== Inclusions from other projects ==
+== Inclusions from other projects
 
 Git subtrees and submodules are clever but full of traps. Discussion
 here:
@@ -46,9 +46,9 @@ builds.  For this reason, we use naive textual inclusion.
 So far this has only been an issue with libaes_siv. If you notice
 there's an inclusion not listed here, file an issue.
 
-== C Guidelines ==
+== C Guidelines
 
-=== C API standards ===
+=== C API standards
 
 The baseline C standard to write to is ISO/IEC 9899:1999, also known
 as C99 (but see the following section on banned functions).  Note that
@@ -93,7 +93,7 @@ Here are the non-standardized APIs that may be used:
   UDP packet layer.  See ntpd/ntp_packetstamp.c for details - if you
   add a local hack to do this, it needs to be sealed inside that module.
 
-=== Banned functions ===
+=== Banned functions
 
 The following C99/POSIX functions are BANNED.  They are unsafe, tending to
 cause buffer overruns and (all too often) exploitable security holes:
@@ -113,11 +113,11 @@ property is not portable.
 In general, avoid functions that are non-reentrant.  When in doubt, see
 http://www.unix.org/whitepapers/reentrant.html[Thread-safety and POSIX.1]
 
-=== Banned features ===
+=== Banned features
 
 All C files should be in plain US-ASCII encoding; do not use trigraphs.
 
-=== Other interfaces to be avoided ===
+=== Other interfaces to be avoided
 
 Don't use gettimeofday(2).  While this is nominally POSIX, it is
 deprecated and may be removed in the future.  Use clock_gettime(2)
@@ -134,7 +134,7 @@ want that to happen again. Thus, if you must refer to struct timeval due to
 an external interface, move the data to/from a struct timespec as
 close to that call site as possible.
 
-=== Coding style and indentation ===
+=== Coding style and indentation
 
 Dr. Dave Mills liked this code indented formatted in a consistent way.
 The file "dot.emacs" has the emacs C-mode indentation style that Dave
@@ -147,7 +147,7 @@ result in a coordinated flag day in ongoing development, it will be
 carefully announced in the mailto:devel at ntpsec.org mailing list before
 being merged and pushed.
 
-=== Conventions for #ifdef guard names ===
+=== Conventions for #ifdef guard names
 
 Parts of this code are a thicket of C preprocessor conditionals.
 In an attempt to make these halfway comprehensible, we use the
@@ -189,7 +189,7 @@ USE_*::
 	gate use of sections of code that must be conditionally
 	compiled depending on *combinations* of HAVE and NEED symbols.
 
-=== Cross-platform portability ===
+=== Cross-platform portability
 
 Do not bake in any assumptions about 32-vs-64-bit word size.  It is OK
 to assume the code will never run on a 16-bit machine.  When in doubt,
@@ -219,7 +219,7 @@ is true on effectively all modern hardware, the code runs on some
 sufficiently old iron that this is not necessarily the case even if
 the compiler and toolchain have been modernized.
 
-== Python guidelines ==
+== Python guidelines
 
 You may assume Python 2 at 2.6 or later, or Python 3 at 3.3 or later.
 
@@ -249,9 +249,9 @@ Note: In the future, the Python baseline may
 http://www.curiousefficiency.org/posts/2015/04/stop-supporting-python26.html[change
 t 2.7.2].
 
-== General notes ==
+== General notes
 
-=== Build system ===
+=== Build system
 
 The build uses waf, replacing a huge ancient autoconf hairball that
 caused many problems. The waf script is embedded in the top level of
@@ -260,7 +260,7 @@ instructions.
 
 Full waf documentation is at https://waf.io/
 
-=== Naming conventions ===
+=== Naming conventions
 
 Almost every binary and script we install has an "ntp" prefix on the name
 because namespace pollution is rude. (The only exception is "ntsd", the
@@ -270,7 +270,7 @@ want us to install, follow this convention.
 Generally, we favor "ntp" rather than "ntp-" for consistency and to
 reduce the amount people have to type. Choose tastefully.
 
-=== Well-tempered output ===
+=== Well-tempered output
 
 We are devotees of the Unix rule that programs should play nicely
 with other programs.  We like output formats that are simple,
@@ -305,7 +305,7 @@ UTC with some options frozen; full year required, medial T required,
 explicit Zulu timezone). Local times should be expressed in ISO 8601,
 always with the full 4-digit year.
 
-=== Copyrights and licenses ===
+=== Copyrights and licenses
 
 Much of the historic code in this distribution is under the "NTP
 License" resembling BSD-2-clause.  Our favored licenses are
@@ -361,7 +361,7 @@ the historic copyright is no longer appropriate, but such decisions
 cannot be made casually. Discuss it with the project management
 before moving.
 
-=== Document what you do ===
+=== Document what you do
 
 When you change anything user-visible, you are expected to update the
 relevant documentation *in the same commit*.  No exceptions.
@@ -369,7 +369,7 @@ relevant documentation *in the same commit*.  No exceptions.
 Otherwise, we'd have to inflict long, tedious document reviews on
 everybody. Nobody wants that.
 
-=== Documentation format and structure ===
+=== Documentation format and structure
 
 All our documentation is mastered in asciidoc.  That includes internal
 documentation like this file. We do this because asciidoc is easy to
@@ -396,7 +396,7 @@ a large common include file. These includes live in docs/includes
 and are probably what you need to edit if you're updating anything
 that appears on a man page.
 
-=== Version number ===
+=== Version number
 
 We use a variant of three-part Semantic Versioning, of the form X.Y.Z.
 X, Y, and Z are non-negative decimal integers.
@@ -424,7 +424,7 @@ Note that this is a different numbering system from NTP Classic. In
 their A.B.C numbers, A was the protocol version, B was the major, and
 C was the minor.  They also use release-candidate suffixes.
 
-== Version string ==
+== Version string
 
 We use the BUILD_EPOCH as described in packaging/packaging.adoc for
 the timestamp (converted to RFC 3339 format) part of the version
@@ -438,7 +438,7 @@ Development builds have version strings of the form:
 
 <base version number>+ <BUILD_EPOCH in RFC 3339 format> (git rev <git shorthash>)
 
-== Contribution workflow and conventions ==
+== Contribution workflow and conventions
 
 Please work on one piece of conceptual work at a time.
 
@@ -450,14 +450,14 @@ mailto:devel at ntpsec.org mailing list.  Other people may have
 suggestions, will want to collaborate, and will wish to review your
 code.
 
-=== Git ===
+=== Git
 
 We use Git as our distributed version control system.
 
 If you ever get stuck or confused while using Git, please consult
 http://ohshitgit.com/
 
-=== GitLab.com ===
+=== GitLab.com
 
 We use GitLab.com as our forge.
 
@@ -477,7 +477,7 @@ of the Project Manager, after consulting with the existing core team.
 Generally, other levels of access will not be granted, as they are not
 necessary to be a welcome and effective contributor.
 
-=== Optional: Send patches by email ===
+=== Optional: Send patches by email
 
 If you do not want to use GitLab pull requests, we welcome simple fix
 and "drive-by" patches submitted by email.
@@ -501,7 +501,7 @@ parameter ---author from the email From header and the git parameter
 
 For complex patches and contribution narratives, please use GitLab.
 
-== Commit comments ==
+== Commit comments
 
 And please follow git conventions for change comments. That means your comment
 should consist of:
@@ -538,7 +538,7 @@ summary.
 Yes, we know the pre-git portions of the history violate some of these.
 That was then; this is now.
 
-=== How to refer to previous commits ===
+=== How to refer to previous commits
 
 The best (most human-friendly) way to reference a commit is by quoting its
 summary line; if you need to disambiguate, give its date and author.
@@ -548,7 +548,7 @@ keeping random strings of hex digits in working memory.  Besides, hashes
 will break if the history is ever moved to another VCS or the repository
 has to be surgically altered.
 
-=== Avoid unnecessary merge bubbles ===
+=== Avoid unnecessary merge bubbles
 
 There are two kinds of merge bubbles in git commit graphs. The
 necessary kind happens because branches have genuinely diverged enough
@@ -579,7 +579,7 @@ Setting this option adds --rebase to all your pulls; this may cause
 a minor inconvenience when you have uncommitted local changes; you
 should be able to use "git stash" to get around that.
 
-== Logging tags ==
+== Logging tags
 
 To facilitate analysis of logs, log messages are tagged with an initial
 topic group token.  These are:
@@ -598,7 +598,7 @@ PROTO:: Protocol machine actions
 REFCLOCK:: Reference clock and driver actions
 MODE6:: Processing of Mode 6 requests
 
-== Release Checklist ==
+== Release Checklist
 
 This is the release checklist to be used by the project manager to cut
 each release.


=====================================
devel/ntpv5.adoc
=====================================
@@ -1,4 +1,4 @@
-= Preliminary design notes for the NTPv5 protocol =
+= Preliminary design notes for the NTPv5 protocol
 
 NTPv4 is showing its age.  There are functional capabilities that
 would be very useful if they could be standardized but
@@ -7,9 +7,9 @@ currently are not.
 This document will first list these missing bits, then discuss
 ways to incorporate them.
 
-== The missing data: a semantic view ==
+== The missing data: a semantic view
 
-=== REFIDs ===
+=== REFIDs
 
 Reference IDs are used by Stratum 1 sources to identify clocks and
 clock types, and by hosts at higher strata to perform loop detection.
@@ -23,7 +23,7 @@ loop detection.
 The new protocol should support REFIDs at least as long as an IPv6
 address (16 octets).
 
-=== Timescale ===
+=== Timescale
 
 Most servers ship UTC.  Some ship TAI. Some perform leap-second
 smearing, some do not.
@@ -31,14 +31,14 @@ smearing, some do not.
 The new protocol should enable a server to advertise its timescale,
 including, if applicable in its timescale, its current leap second offset.
 
-=== Era ===
+=== Era
 
 NTP dates are 64-bit counters based on an epoch.
 
 The new protocol should enable a server to ship a year identifying its
 epoch.
 
-=== NTS ===
+=== NTS
 
 The IETF is attempting to develop a new cryptographic standard for
 secure/authenticated time exchange: Network Time Security.
@@ -48,11 +48,11 @@ https://tools.ietf.org/wg/ntp/
 The new protocol needs to allow a block of data of as-yet unspecified
 and possibly variable size to be dedicated to NTS use.
 
-== Extensions vs. replacement ==
+== Extensions vs. replacement
 
 There are three possible scenarios for NTPv5 design.
 
-=== NTPv4+ ===
+=== NTPv4+
 
 In this incremental approach, the NTP port number (123) is retained
 and the 48-byte header v4 header is preserved. New data fields are
@@ -64,7 +64,7 @@ known to silently discard RFC7822 extension blocks as a way of
 preventing DoS attacks; this would create propagation issues
 difficult to diagnose.
 
-=== NTPNG ===
+=== NTPNG
 
 In this approach, a new port number is allocated. The protocol
 design is unconstrained except that it must carry the semantic
@@ -74,7 +74,7 @@ field.
 The principal difficulty with this approach is that getting all the
 world's firewalls to pass through a new port is not easy.
 
-=== Newmode ===
+=== Newmode
 
 In this approach, the NTP port number is retained.  So is at least
 the first byte of the v4 packet header structure, so that the version
@@ -89,7 +89,7 @@ The principal difficulty with this approach is that implementations
 might not reject Version 5 packets, and therefore mis-parse the
 header.  NTP Classic and NTPsec *do* perform this check.
 
-== Payload format design for the NTPNG and Newmode cases ==
+== Payload format design for the NTPNG and Newmode cases
 
 NTP is running out of version numbers.  The version field is only 3
 bits wide.  Accordingly, the Newmode payload should be structured like
@@ -125,7 +125,7 @@ that PNG chunks have only two-byte lengths and always end with a CRC.
 This chunk system is deliberately more similar to RFC7822 extension
 blocks.
 
-== Daniel weighs in ==
+== Daniel weighs in
 
 There aren't many deficiencies in NTPv4 which can't be fixed by adding
 extension fields. A change big enough to make a version bump


=====================================
devel/nts.adoc
=====================================
@@ -1,6 +1,6 @@
-= NTS support specification =
+= NTS support specification
 
-== Cisco's Statement of Work requirements ==
+== Cisco's Statement of Work requirements
 
 The NTS implementation shall:
 
@@ -14,7 +14,7 @@ The NTS implementation shall:
 
 * Be interoperable with the other reference implementations in IETF hackathons.
 
-== General Ideas ==
+== General Ideas
 
 The NTP server maintains no per-client state.  The necessary state
 is provided by a cookie that is included with each NTP request.  An
@@ -43,7 +43,7 @@ are the same length as the request.  This means that some
 fields are padded to match the length of the response that
 will replace them.
 
-== System Partitioning ==
+== System Partitioning
 
 This picture is for discussion.  In actual packaging Alpha and Bravo
 will both be inside ntpd. In the simple case, Charlie and Delta can
@@ -85,7 +85,7 @@ does that, it doesn't need to know the key or anything about the
 contents of a cookie.
 
 
-=== Alpha -> Bravo ===
+=== Alpha -> Bravo
 NTP client to NTS-KE client (Alpha to Bravo) is pretty simple.
 As these will both be inside ntpd, this will be function calling,
 not a network connection.
@@ -153,7 +153,7 @@ configure an OpenSSL cipher string for the AEAD algorithms.
 The NTP client SHOULD provide a mechanism for the administrator to
 see whether NTS is currently in use on a given server association.
 
-=== Bravo -> Delta ===
+=== Bravo -> Delta
 The NTS-KE client to NTS-KE server (Bravo to Delta) communication is
 mostly the above in TLS 1.3 (or later) over TCP in the format
 specified in the NTS draft.
@@ -172,7 +172,7 @@ The NTS-KE server then generates and returns 8 cookies using, for
 example, the suggested format in section 6 of the NTS draft.  To do
 so, the NTS-KE server needs a master key, called "K" in the draft.
 
-=== Alpha -> Charlie ===
+=== Alpha -> Charlie
 NTP client to NTP server (Alpha to Charlie)
 
 If all goes well (no lost packets) the client sends:
@@ -203,7 +203,7 @@ data as well.  For the request, the encrypted data is empty.  For the
 response, it contains a new cookie (or cookies). AEAD also needs a nonce.
 
 
-== Configuration ==
+== Configuration
 
 The NTS-KE server SHOULD have a configuration parameter to specify
 which TLS protocols are permissible.  Regardless of what is
@@ -230,7 +230,7 @@ the TLS key, certificate, and intermediate certificate bundles.
 The NTS-KE server MAY have a method to reload the key, certificate,
 and intermediate certificate bundles without a full daemon restart.
 
-== NTS Configuration parameters (client side) ==
+== NTS Configuration parameters (client side)
 
 Options now implemented in the config parser are now described in
 docs/includes/auth-commands.txt
@@ -245,9 +245,9 @@ To avoid having to hand-configure ciphers offered to the remote, we
 can initially have a list of common known-good ones wired in.
 Eventually, look into how openssl-ciphers does this and autoconfigure.
 
-== NTS-KE Server Configuration parameters ==
+== NTS-KE Server Configuration parameters
 
-== TLS Options ==
+== TLS Options
 
 The directory with the Certificates of Certification Authorities (CAs).
 
@@ -328,7 +328,7 @@ TLSVerifyClient level
 ....
 
 
-== Key Generation and Usage ==
+== Key Generation and Usage
 
 NTS makes use of three keys:
 
@@ -364,7 +364,7 @@ NTS Master Key to revover C2S and S2C.  It uses C2S to authenticate the
 packet. For the response, S2C is used to encrypt the new cookies and
 authenticate the return packet.
 
-== Odds and ends ==
+== Odds and ends
 
 How many cookies should the NTP client try to hold?  8
 
@@ -411,7 +411,7 @@ Is the response in case of abuse 'continue abuse, just wait a minute'?
 === link:https://tools.ietf.org/html/draft-ietf-ntp-using-nts-for-ntp#section-5.4[5.4], link:https://tools.ietf.org/html/draft-ietf-ntp-using-nts-for-ntp#section-5.5[5.5]
 When sending a cookie placeholder, are multiple cookie extensions sent?
 
-=== link:https://tools.ietf.org/html/draft-ietf-ntp-using-nts-for-ntp#section-5.7[5.7] ===
+=== link:https://tools.ietf.org/html/draft-ietf-ntp-using-nts-for-ntp#section-5.7[5.7]
 Does the unique identifier extension need to be omniversally unique?
 
 Why are The timestamps, unique identifier extension etc. seemingly not tamper resisted?


=====================================
devel/testing.adoc
=====================================
@@ -1,4 +1,4 @@
-= How To Test NTPsec =
+= How To Test NTPsec
 
 This assumes you have downloaded the source and built a system
 and now you want to test your new ntpd.
@@ -6,7 +6,7 @@ and now you want to test your new ntpd.
 For help on getting that far, see the file INSTALL in the top-level
 directory.
 
-== Path problems with the test tools ==
+== Path problems with the test tools
 
 The build tree has been set up so that if you first waf builid then cd to
 build/main/ntpclients/ and run (say) ntpq, you should be able to test
@@ -47,7 +47,7 @@ bug but a packaging error that the NTPsec maintainers themselves can't
 fix. In that case, you need to report it to your distribution
 maintainers.
 
-== Preliminary one-off test ==
+== Preliminary one-off test
 
 For a one-off test:
 
@@ -66,7 +66,7 @@ Your current /etc/ntp.conf should work correctly.
 Check your log files to see if there is anything strange.
 Run "ntpq -p" to see if things look normal.
 
-== Full qualification test ==
+== Full qualification test
 
 For a longer test, including over reboots.
 
@@ -76,7 +76,7 @@ That will install your new ntpd into /usr/local/sbin/ntpd
 Now you have to patch your (re)start scripts to look there
 and restart ntpd.  The details vary by OS/distro.
 
-=== Distributions using systemd ===
+=== Distributions using systemd
 
 1. Edit /usr/lib/systemd/system/ntpd.service
 
@@ -98,7 +98,7 @@ gets sourced into the init script so you can put the real code in there
     PATH="/usr/local/sbin:$PATH"
 --------------------------------------------------
 
-=== Debian, Ubuntu, Raspbian ===
+=== Debian, Ubuntu, Raspbian
 
 Many newer versions use systemd; follow those directions. The
 rest of this section describes the older set of conventions used
@@ -142,7 +142,7 @@ rather than the one it wants you to:
 
 apt-get upgrade may undo those edits and revert to running the system version.
 
-=== FreeBSD ===
+=== FreeBSD
 
 Edit /etc/rc.conf It needs to contain this:
 
@@ -154,7 +154,7 @@ ntpd_program="/usr/local/sbin/ntpd"
 If you are running ntpd, the first line will be there
 already.  The default is NO.
 
-=== NetBSD ===
+=== NetBSD
 
 Edit /etc/rc.d/ntpd. Change
 


=====================================
devel/tour.adoc
=====================================
@@ -1,4 +1,4 @@
-= A Tour of the NTP Internals =
+= A Tour of the NTP Internals
 
 This document is intended to be helpful to people trying to understand
 and modify the NTP code.  It aims to explain how the pieces fit
@@ -13,9 +13,9 @@ However, try not to replicate comments here; it's better to point
 at where they live in the code.  This document is intended to convey
 a higher-level view than individual comments.
 
-== Key Types ==
+== Key Types
 
-=== l_fp, s_fp, u_fp ===
+=== l_fp, s_fp, u_fp
 
 C doesn't have any native fixed-point types, only float types.
 To do certain time calculations without loss of precision, NTP
@@ -56,7 +56,7 @@ will be, by a factor of at least five million) we can map all incoming
 timestamps from whatever cycle into the nearest time in modular
 arithmetic relative to the cycle length.
 
-=== time64_t ===
+=== time64_t
 
 NTP was written well before the 64-bit word size became common. While
 compilers on 32-bit machines sometimes have had "long long" as an
@@ -70,7 +70,7 @@ way but implemented as a uint64_t has already replaced this.
 This still has some utility because NTP still runs on 32-bit machines
 with a 32-bit time_t.
 
-=== refid ===
+=== refid
 
 A refid is not a type of its own, but a convention that overloads
 different kinds of information in a 32-bit field that occurs in a
@@ -100,7 +100,7 @@ The conflation of ID-for-humans with the loop-detection cookie is not quite
 the design error it looks like, as refclocks aren't implicated in
 loop detection.
 
-=== struct timespec vs. struct timeval ===
+=== struct timespec vs. struct timeval
 
 These aren't local types themselves - both are standardized in
 ANSI/POSIX.  They're both second/subsecond pairs intended to represent
@@ -127,7 +127,7 @@ or to nanosecond precision as close to these call sites as possible;
 this doesn't pull additional accuracy out of thin air, but it does
 avoid loss-of-precision bugs due to mixing these structures.
 
-=== struct peer ===
+=== struct peer
 
 In ntpd, there are peer control blocks - one per upstream synchronization
 source - that have an IP address in them.  That's what the main
@@ -140,12 +140,12 @@ internet.  Refclock data always has a round trip time of zero, and the
 code that finds the lowest RTT picks the most recent slot when the
 RTTs are equal.
 
-== config file parser ==
+== config file parser
 
 There is a minor quirk: numbers come in as integers, type T_Integer.
 There is no type T_Unsigned.  Range checking may not work right.
 
-== ntpd control flow ==
+== ntpd control flow
 
 In normal operation, after initialization, ntpd loops forever
 waiting for a UDP packet to arrive on some set of open interfaces, or
@@ -201,7 +201,7 @@ There was internal evidence in the NTP Classic build machinery that
 asynchronous I/O on Unix machines probably hadn't worked for
 quite a while before NTPsec removed it.
 
-== System call interface and the PLL ==
+== System call interface and the PLL
 
 All of ntpds clock management is done through four system calls:
 clock_gettime(2), clock_settime(2), and either ntp_adjtime(2) or (in
@@ -327,7 +327,7 @@ RFC 1589 covers the above timekeeping and slewing and kernel PLL.
 RFC 2783 covers the API for reading a time stamp the kernel grabs when a PPS
 happens.
 
-== Refclock management ==
+== Refclock management
 
 There is an illuminating comment in ntpd/ntp_refclock.c that begins
 "Reference clock support is provided here by maintaining the fiction
@@ -350,7 +350,7 @@ The process everything step sorts the contents of the FIFO, then discards
 outliers, roughly 1/3 of the samples, and then figures out the average and
 injects that into the peer buffer for the refclock.
 
-== Asynchronous DNS lookup ==
+== Asynchronous DNS lookup
 
 The DNS code runs in a separate thread to avoid stalling
 the main loop while it waits for a DNS lookup to return. And DNS
@@ -383,7 +383,7 @@ isn't a way to do that yet - the pool doesn't have any DNS support
 for it.)  The other would be to try replacing the poorest server
 rather than only replacing dead servers.
 
-== The build recipe ==
+== The build recipe
 
 The build recipe is, essentially, a big Python program using a set of
 specialized procedures called 'waf'.  To learn about waf itself see
@@ -432,7 +432,7 @@ a loadable Python module.  Here are a few useful generalizations:
   You will usually be able to model your implementation on code that
   is already there.
 
-== The Python tools ==
+== The Python tools
 
 Project policy is that (a) anything that does not have to be written
 in C shouldn't be, and (b) our preferred non-C language is Python.
@@ -446,7 +446,7 @@ layering of the three most important ones - ntpq, ntpdig, and ntpmon.
 These are front ends to a back-end library of Python service routines that
 installs as 'ntp' and lives in the source tree at pylib/.
 
-=== ntpq and ntpmon ===
+=== ntpq and ntpmon
 
 ntpq and ntpmon are front ends to back-end class called ControlSession
 that lives in ntp.packet.
@@ -474,13 +474,13 @@ doesn't live in the front end.  It's in ntp.util, well separated from
 both the command interpreter and the protocol back end so it can be
 re-used.
 
-=== ntpdig ===
+=== ntpdig
 
 ntpdig also uses the pylib library but doesn't speak Mode 6.
 Instead, it builds and interprets time-synchronization packets
 using some of the same machinery.
 
-=== MRU reporting ===
+=== MRU reporting
 
 The mrulist() method in ControlSession is more complex than the rest of the
 back-end code put together except do_query() itself.  It is the one part


=====================================
devel/y2k.adoc
=====================================
@@ -1,10 +1,10 @@
-= Y2K certification =
+= Y2K certification
 
 The NTP suite version 4.0.91 (dating from before continuous
 version-control history) was tested for Y2K conformance by the AT&T
 Freeware project.
 
-== Test notes ==
+== Test notes
 
 ............................................................................
 Name of the Application: xntp
@@ -117,7 +117,7 @@ Non-Y2K Problems Observed:
 
 The "Non-Y2K Problems Observed" have been fixed.
 
-== Test results ==
+== Test results
 
 ............................................................................
 Script started on Sat Jan  1 04:14:09 2000
@@ -192,7 +192,7 @@ server 135.25.xxxx.xxxx, stratum 1, offset -0.000023, delay 0.02731
 29 Feb 00:02:15 ntpdate[8353]: adjust time server 135.25.xxxx.xxxx offset -0.000023 sec
 ............................................................................
 
-== AT&T README ==
+== AT&T README
 
 This is most of the AT&T README file for the Y2K patches.
 Some now-irrelevant material has been removed.


=====================================
packaging/README.adoc
=====================================
@@ -1,4 +1,4 @@
-== Packaging ==
+== Packaging
 
 Packaging scripts go in this directory.
 


=====================================
packaging/packaging.adoc
=====================================
@@ -1,12 +1,12 @@
-= Guidance for package builders =
+= Guidance for package builders
 
-== Package parts ==
+== Package parts
 
 Some useful components for package building can be found in the etc/
 subdirectory, including init boot time scripts, systemd unit files,
 and boilerplate for default ntpd configuration.
 
-== ntp.conf installation ==
+== ntp.conf installation
 
 Installation from source (waf install) does not attempt to put an ntp.conf
 or ntp.d in place. Your installable package should do this.
@@ -14,7 +14,7 @@ or ntp.d in place. Your installable package should do this.
 The reason this is so is that NTPsec does not yet have an authorized
 pool group of its own. This may change in the future.
 
-== Platforms without Python ==
+== Platforms without Python
 
 Many tools (actually, almost everything except the core daemon itself)
 have been moved from C to Python. This is an important step for
@@ -56,7 +56,7 @@ not have Python installed and execute the programs there.
 There appears to be no speed advantage, or disadvantage, to running the
 binaries created by cx_freeze.
 
-== Hacking Python shebangs ==
+== Hacking Python shebangs
 
 The shebang lines in our Python scripts point to "python".  Part of
 our standard tests check that you can change that to "python3" without
@@ -75,7 +75,7 @@ their distro's Python policy.
 We think the choice that minimizes overall pain, and directs it to
 the party best able to cope, is clear.  We choose (b).
 
-== Cross-era interoperability in modular calendar arithmetic ==
+== Cross-era interoperability in modular calendar arithmetic
 
 The protocol necessarily uses time/date stamps of finite length in
 order to fit into fixed-size fields; they happen to have a 136-year
@@ -100,7 +100,7 @@ environment variable.
 More information on reproducible builds is at:
 https://reproducible-builds.org/[https://reproducible-builds.org/]
 
-== Disambiguation of NMEA dates ==
+== Disambiguation of NMEA dates
 
 Due to bad design of NMEA0183, the reporting protocol used by many GPS
 sensors, the NMEA driver in NTPsec sometimes has to make an assumption



View it on GitLab: https://gitlab.com/NTPsec/ntpsec/commit/f754dc904055f28a649908b7fbf63b9274ff03c5

-- 
View it on GitLab: https://gitlab.com/NTPsec/ntpsec/commit/f754dc904055f28a649908b7fbf63b9274ff03c5
You're receiving this email because of your account on gitlab.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ntpsec.org/pipermail/vc/attachments/20190204/a088eb13/attachment-0001.html>


More information about the vc mailing list