Teach dnssec-settime to read unset times that it writes
When there is no time in a key file, `dnssec-settime` will print "UNSET", but to unset a time the user must specify "none" or "never". This change allows "unset" or "UNSET" as well as "none" or "never". The "UNSET" output remains the same to avoid compatibility problems with wrapper scripts. I have also re-synchronized the "Timing Options" sections of the man pages.
This commit is contained in:
4
CHANGES
4
CHANGES
@@ -1,3 +1,7 @@
|
||||
5891. [func] Key timing options for `dnssec-settime` and related
|
||||
utilities now accept "UNSET" times as printed by
|
||||
`dnssec-settime -p`. [GL #3361]
|
||||
|
||||
5890. [bug] When the fetches-per-server quota was adjusted
|
||||
because of an authoritative server timing out more
|
||||
or less frequently, it was incorrectly set to 1
|
||||
|
||||
@@ -80,14 +80,24 @@ Options
|
||||
Timing Options
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the
|
||||
argument begins with a ``+`` or ``-``, it is interpreted as an offset from
|
||||
the present time. For convenience, if such an offset is followed by one
|
||||
of the suffixes ``y``, ``mo``, ``w``, ``d``, ``h``, or ``mi``, then the offset is
|
||||
computed in years (defined as 365 24-hour days, ignoring leap years),
|
||||
months (defined as 30 24-hour days), weeks, days, hours, or minutes,
|
||||
respectively. Without a suffix, the offset is computed in seconds. To
|
||||
explicitly prevent a date from being set, use ``none`` or ``never``.
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
|
||||
(which is the format used inside key files),
|
||||
or 'Day Mon DD HH:MM:SS YYYY' (as printed by ``dnssec-settime -p``),
|
||||
or UNIX epoch time (as printed by ``dnssec-settime -up``),
|
||||
or the literal ``now``.
|
||||
|
||||
The argument can be followed by ``+`` or ``-`` and an offset from the
|
||||
given time. The literal ``now`` can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes ``y``, ``mo``, ``w``,
|
||||
``d``, ``h``, or ``mi``, so that it is computed in years (defined as
|
||||
365 24-hour days, ignoring leap years), months (defined as 30 24-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
|
||||
To explicitly prevent a date from being set, use ``none``, ``never``,
|
||||
or ``unset``.
|
||||
|
||||
All these formats are case-insensitive.
|
||||
|
||||
.. option:: -P date/offset
|
||||
|
||||
|
||||
@@ -178,14 +178,24 @@ Options
|
||||
Timing Options
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the
|
||||
argument begins with a ``+`` or ``-``, it is interpreted as an offset from
|
||||
the present time. For convenience, if such an offset is followed by one
|
||||
of the suffixes ``y``, ``mo``, ``w``, ``d``, ``h``, or ``mi``, then the offset is
|
||||
computed in years (defined as 365 24-hour days, ignoring leap years),
|
||||
months (defined as 30 24-hour days), weeks, days, hours, or minutes,
|
||||
respectively. Without a suffix, the offset is computed in seconds. To
|
||||
explicitly prevent a date from being set, use ``none`` or ``never``.
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS
|
||||
(which is the format used inside key files),
|
||||
or 'Day Mon DD HH:MM:SS YYYY' (as printed by ``dnssec-settime -p``),
|
||||
or UNIX epoch time (as printed by ``dnssec-settime -up``),
|
||||
or the literal ``now``.
|
||||
|
||||
The argument can be followed by ``+`` or ``-`` and an offset from the
|
||||
given time. The literal ``now`` can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes ``y``, ``mo``, ``w``,
|
||||
``d``, ``h``, or ``mi``, so that it is computed in years (defined as
|
||||
365 24-hour days, ignoring leap years), months (defined as 30 24-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
|
||||
To explicitly prevent a date from being set, use ``none``, ``never``,
|
||||
or ``unset``.
|
||||
|
||||
All these formats are case-insensitive.
|
||||
|
||||
.. option:: -P date/offset
|
||||
|
||||
|
||||
@@ -227,15 +227,15 @@ or 'Day Mon DD HH:MM:SS YYYY' (as printed by ``dnssec-settime -p``),
|
||||
or UNIX epoch time (as printed by ``dnssec-settime -up``),
|
||||
or the literal ``now``.
|
||||
|
||||
The argument can be followed by '+' or '-' and an offset from the
|
||||
The argument can be followed by ``+`` or ``-`` and an offset from the
|
||||
given time. The literal ``now`` can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes 'y', 'mo', 'w', 'd',
|
||||
'h', or 'mi', so that it is computed in years (defined as 365 24-hour
|
||||
days, ignoring leap years), months (defined as 30 24-hour days),
|
||||
weeks, days, hours, or minutes, respectively. Without a suffix, the
|
||||
offset is computed in seconds.
|
||||
offset can be followed by one of the suffixes ``y``, ``mo``, ``w``,
|
||||
``d``, ``h``, or ``mi``, so that it is computed in years (defined as
|
||||
365 24-hour days, ignoring leap years), months (defined as 30 24-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
|
||||
To unset a date, use ``none`` or ``never``.
|
||||
To unset a date, use ``none``, ``never``, or ``unset``.
|
||||
|
||||
.. option:: -P date/offset
|
||||
|
||||
|
||||
@@ -114,15 +114,17 @@ or 'Day Mon DD HH:MM:SS YYYY' (as printed by ``dnssec-settime -p``),
|
||||
or UNIX epoch time (as printed by ``dnssec-settime -up``),
|
||||
or the literal ``now``.
|
||||
|
||||
The argument can be followed by '+' or '-' and an offset from the
|
||||
The argument can be followed by ``+`` or ``-`` and an offset from the
|
||||
given time. The literal ``now`` can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes 'y', 'mo', 'w', 'd',
|
||||
'h', or 'mi', so that it is computed in years (defined as 365 24-hour
|
||||
days, ignoring leap years), months (defined as 30 24-hour days),
|
||||
weeks, days, hours, or minutes, respectively. Without a suffix, the
|
||||
offset is computed in seconds.
|
||||
offset can be followed by one of the suffixes ``y``, ``mo``, ``w``,
|
||||
``d``, ``h``, or ``mi``, so that it is computed in years (defined as
|
||||
365 24-hour days, ignoring leap years), months (defined as 30 24-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
|
||||
To unset a date, use ``none`` or ``never``.
|
||||
To unset a date, use ``none``, ``never``, or ``unset``.
|
||||
|
||||
All these formats are case-insensitive.
|
||||
|
||||
.. option:: -P date/offset
|
||||
|
||||
|
||||
@@ -243,7 +243,8 @@ time_units(isc_stdtime_t offset, char *suffix, const char *str) {
|
||||
static bool
|
||||
isnone(const char *str) {
|
||||
return ((strcasecmp(str, "none") == 0) ||
|
||||
(strcasecmp(str, "never") == 0));
|
||||
(strcasecmp(str, "never") == 0) ||
|
||||
(strcasecmp(str, "unset") == 0));
|
||||
}
|
||||
|
||||
dns_ttl_t
|
||||
|
||||
@@ -212,14 +212,22 @@ key=`$KEYGEN -q -a RSASHA1 $czone`
|
||||
|
||||
echo_i "checking -p output time is accepted ($n)"
|
||||
t=`$SETTIME -pA $key | sed 's/.*: //'`
|
||||
$SETTIME -Psync "$t" $key > /dev/null 2>&1 || ret=1
|
||||
$SETTIME -Psync "$t" $key > settime2.test$n 2>&1 || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo_i "failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo_i "checking -up output time is accepted ($n)"
|
||||
t=`$SETTIME -upA $key | sed 's/.*: //'`
|
||||
$SETTIME -Dsync "$t" $key > /dev/null 2>&1 || ret=1
|
||||
$SETTIME -Dsync "$t" $key > settime2.test$n 2>&1 || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo_i "failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo_i "checking -p unset time is accepted ($n)"
|
||||
# The Delete timing metadata is unset.
|
||||
t=`$SETTIME -pD $key | sed 's/.*: //'`
|
||||
$SETTIME -Psync "$t" $key > settime2.test$n 2>&1 || ret=1
|
||||
n=`expr $n + 1`
|
||||
if [ $ret != 0 ]; then echo_i "failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
@@ -91,14 +91,24 @@ This option prints version information.
|
||||
.UNINDENT
|
||||
.SH TIMING OPTIONS
|
||||
.sp
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the
|
||||
argument begins with a \fB+\fP or \fB\-\fP, it is interpreted as an offset from
|
||||
the present time. For convenience, if such an offset is followed by one
|
||||
of the suffixes \fBy\fP, \fBmo\fP, \fBw\fP, \fBd\fP, \fBh\fP, or \fBmi\fP, then the offset is
|
||||
computed in years (defined as 365 24\-hour days, ignoring leap years),
|
||||
months (defined as 30 24\-hour days), weeks, days, hours, or minutes,
|
||||
respectively. Without a suffix, the offset is computed in seconds. To
|
||||
explicitly prevent a date from being set, use \fBnone\fP or \fBnever\fP\&.
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
|
||||
(which is the format used inside key files),
|
||||
or \(aqDay Mon DD HH:MM:SS YYYY\(aq (as printed by \fBdnssec\-settime \-p\fP),
|
||||
or UNIX epoch time (as printed by \fBdnssec\-settime \-up\fP),
|
||||
or the literal \fBnow\fP\&.
|
||||
.sp
|
||||
The argument can be followed by \fB+\fP or \fB\-\fP and an offset from the
|
||||
given time. The literal \fBnow\fP can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes \fBy\fP, \fBmo\fP, \fBw\fP,
|
||||
\fBd\fP, \fBh\fP, or \fBmi\fP, so that it is computed in years (defined as
|
||||
365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
.sp
|
||||
To explicitly prevent a date from being set, use \fBnone\fP, \fBnever\fP,
|
||||
or \fBunset\fP\&.
|
||||
.sp
|
||||
All these formats are case\-insensitive.
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-P date/offset
|
||||
|
||||
@@ -202,14 +202,24 @@ involved.)
|
||||
.UNINDENT
|
||||
.SH TIMING OPTIONS
|
||||
.sp
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS. If the
|
||||
argument begins with a \fB+\fP or \fB\-\fP, it is interpreted as an offset from
|
||||
the present time. For convenience, if such an offset is followed by one
|
||||
of the suffixes \fBy\fP, \fBmo\fP, \fBw\fP, \fBd\fP, \fBh\fP, or \fBmi\fP, then the offset is
|
||||
computed in years (defined as 365 24\-hour days, ignoring leap years),
|
||||
months (defined as 30 24\-hour days), weeks, days, hours, or minutes,
|
||||
respectively. Without a suffix, the offset is computed in seconds. To
|
||||
explicitly prevent a date from being set, use \fBnone\fP or \fBnever\fP\&.
|
||||
Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS
|
||||
(which is the format used inside key files),
|
||||
or \(aqDay Mon DD HH:MM:SS YYYY\(aq (as printed by \fBdnssec\-settime \-p\fP),
|
||||
or UNIX epoch time (as printed by \fBdnssec\-settime \-up\fP),
|
||||
or the literal \fBnow\fP\&.
|
||||
.sp
|
||||
The argument can be followed by \fB+\fP or \fB\-\fP and an offset from the
|
||||
given time. The literal \fBnow\fP can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes \fBy\fP, \fBmo\fP, \fBw\fP,
|
||||
\fBd\fP, \fBh\fP, or \fBmi\fP, so that it is computed in years (defined as
|
||||
365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
.sp
|
||||
To explicitly prevent a date from being set, use \fBnone\fP, \fBnever\fP,
|
||||
or \fBunset\fP\&.
|
||||
.sp
|
||||
All these formats are case\-insensitive.
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-P date/offset
|
||||
|
||||
@@ -256,15 +256,15 @@ or \(aqDay Mon DD HH:MM:SS YYYY\(aq (as printed by \fBdnssec\-settime \-p\fP),
|
||||
or UNIX epoch time (as printed by \fBdnssec\-settime \-up\fP),
|
||||
or the literal \fBnow\fP\&.
|
||||
.sp
|
||||
The argument can be followed by \(aq+\(aq or \(aq\-\(aq and an offset from the
|
||||
The argument can be followed by \fB+\fP or \fB\-\fP and an offset from the
|
||||
given time. The literal \fBnow\fP can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes \(aqy\(aq, \(aqmo\(aq, \(aqw\(aq, \(aqd\(aq,
|
||||
\(aqh\(aq, or \(aqmi\(aq, so that it is computed in years (defined as 365 24\-hour
|
||||
days, ignoring leap years), months (defined as 30 24\-hour days),
|
||||
weeks, days, hours, or minutes, respectively. Without a suffix, the
|
||||
offset is computed in seconds.
|
||||
offset can be followed by one of the suffixes \fBy\fP, \fBmo\fP, \fBw\fP,
|
||||
\fBd\fP, \fBh\fP, or \fBmi\fP, so that it is computed in years (defined as
|
||||
365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
.sp
|
||||
To unset a date, use \fBnone\fP or \fBnever\fP\&.
|
||||
To unset a date, use \fBnone\fP, \fBnever\fP, or \fBunset\fP\&.
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-P date/offset
|
||||
|
||||
@@ -126,15 +126,17 @@ or \(aqDay Mon DD HH:MM:SS YYYY\(aq (as printed by \fBdnssec\-settime \-p\fP),
|
||||
or UNIX epoch time (as printed by \fBdnssec\-settime \-up\fP),
|
||||
or the literal \fBnow\fP\&.
|
||||
.sp
|
||||
The argument can be followed by \(aq+\(aq or \(aq\-\(aq and an offset from the
|
||||
The argument can be followed by \fB+\fP or \fB\-\fP and an offset from the
|
||||
given time. The literal \fBnow\fP can be omitted before an offset. The
|
||||
offset can be followed by one of the suffixes \(aqy\(aq, \(aqmo\(aq, \(aqw\(aq, \(aqd\(aq,
|
||||
\(aqh\(aq, or \(aqmi\(aq, so that it is computed in years (defined as 365 24\-hour
|
||||
days, ignoring leap years), months (defined as 30 24\-hour days),
|
||||
weeks, days, hours, or minutes, respectively. Without a suffix, the
|
||||
offset is computed in seconds.
|
||||
offset can be followed by one of the suffixes \fBy\fP, \fBmo\fP, \fBw\fP,
|
||||
\fBd\fP, \fBh\fP, or \fBmi\fP, so that it is computed in years (defined as
|
||||
365 24\-hour days, ignoring leap years), months (defined as 30 24\-hour
|
||||
days), weeks, days, hours, or minutes, respectively. Without a suffix,
|
||||
the offset is computed in seconds.
|
||||
.sp
|
||||
To unset a date, use \fBnone\fP or \fBnever\fP\&.
|
||||
To unset a date, use \fBnone\fP, \fBnever\fP, or \fBunset\fP\&.
|
||||
.sp
|
||||
All these formats are case\-insensitive.
|
||||
.INDENT 0.0
|
||||
.TP
|
||||
.B \-P date/offset
|
||||
|
||||
Reference in New Issue
Block a user