/* -*- Mode: Text -*- */

autogen definitions options;

#include copyright.def
#include version.def

// We want the synopsis to be "/etc/ntp.keys" but we need the prog-name
// to be ntp.keys - the latter is also how autogen produces the output
// file name.
prog-name       = "ntp.keys";
file-path       = "/etc/ntp.keys";
prog-title      = "NTP symmetric key file format";

/* explain: Additional information whenever the usage routine is invoked */
explain = <<- _END_EXPLAIN
       _END_EXPLAIN;

doc-section     = {
 ds-type       = 'DESCRIPTION';
 ds-format     = 'mdoc';
 ds-text       = <<- _END_PROG_MDOC_DESCRIP
This document describes the format of an NTP symmetric key file.
For a description of the use of this type of file, see the
Qq Authentication Support
section of the
Xr ntp.conf 5
page.
Pp
Xr ntpd 8
reads its keys from a file specified using the
Fl k
command line option or the
Ic keys
statement in the configuration file.
While key number 0 is fixed by the NTP standard
(as 56 zero bits)
and may not be changed,
one or more keys numbered between 1 and 65535
may be arbitrarily set in the keys file.
Pp
The key file uses the same comment conventions
as the configuration file.
Key entries use a fixed format of the form
Pp
D1 Ar keyno type key opt_IP_list
Pp
where
Ar keyno
is a positive integer (between 1 and 65535),
Ar type
is the message digest algorithm,
Ar key
is the key itself, and
Ar opt_IP_list
is an optional comma-separated list of IPs
where the
Ar keyno
should be trusted.
that are allowed to serve time.
Each IP in
Ar opt_IP_list
may contain an optional
Cm /subnetbits
specification which identifies the number of bits for
the desired subnet of trust.
If
Ar opt_IP_list
is empty,
any properly-authenticated message will be
accepted.
Pp
The
Ar key
may be given in a format
controlled by the
Ar type
field.
The
Ar type
Li MD5
is always supported.
If
Li ntpd
was built with the OpenSSL library
then any digest library supported by that library may be specified.
However, if compliance with FIPS 140-2 is required the
Ar type
must be either
Li SHA
or
Li SHA1 .
Pp
What follows are some key types, and corresponding formats:
Pp
Bl -tag -width RMD160 -compact
It Li MD5
The key is 1 to 16 printable characters terminated by
an EOL,
whitespace,
or
a
Li #
(which is the "start of comment" character).
Pp
It Li SHA
It Li SHA1
It Li RMD160
The key is a hex-encoded ASCII string of 40 characters,
which is truncated as necessary.
El
Pp
Note that the keys used by the
Xr ntpq 8
and
Xr ntpdc 8
programs are checked against passwords
requested by the programs and entered by hand,
so it is generally appropriate to specify these keys in ASCII format.
       _END_PROG_MDOC_DESCRIP;
};

doc-section     = {
 ds-type       = 'FILES';
 ds-format     = 'mdoc';
 ds-text       = <<- _END_MDOC_FILES
Bl -tag -width /etc/ntp.keys -compact
It Pa /etc/ntp.keys
the default name of the configuration file
El
       _END_MDOC_FILES;
};

doc-section     = {
 ds-type       = 'SEE ALSO';
 ds-format     = 'mdoc';
 ds-text       = <<- _END_MDOC_SEE_ALSO
Xr ntp.conf 5 ,
Xr ntpd 1ntpdmdoc ,
Xr ntpdate 1ntpdatemdoc ,
Xr ntpdc 1ntpdcmdoc ,
Xr sntp 1sntpmdoc
       _END_MDOC_SEE_ALSO;
};

/*
doc-section     = {
 ds-type       = 'BUGS';
 ds-format     = 'mdoc';
 ds-text       = <<- _END_MDOC_BUGS
Xr ntpd 8
has gotten rather fat.
While not huge, it has gotten larger than might
be desirable for an elevated-priority daemon running on a workstation,
particularly since many of the fancy features which consume the space
were designed more with a busy primary server, rather than a high
stratum workstation, in mind.
       _END_MDOC_BUGS;
};
*/

doc-section     = {
 ds-type       = 'NOTES';
 ds-format     = 'mdoc';
 ds-text       = <<- _END_MDOC_NOTES
This document was derived from FreeBSD.
       _END_MDOC_NOTES;
};