When Michael asked what the leading P and PT entries in front of some times in named configuration options are, I recognized them from working with OpenDNSSEC: they are ISO 8601 duration and time period specifications.

I knew some named.conf options supported these, but I could neither find a definitive list nor an exact description of <duration> in the Bv9ARM, but Evan, as he typically can do, documented it all in a single tweet.

Yes, a duration can be specified in either format. If it starts with ‘P’ then it’s parsed as an ISO 8601 period, otherwise as a TTL.

"grep cfg_type_duration lib/isccfg/namedconf.c" will tell you which options this applies to.

Here’s the alphabetically-sorted list of options as from just a moment ago, obtained from the latest commit:

dnskey-ttl
fstrm-set-reopen-interval
interface-interval
lame-ttl
max-cache-ttl
max-ncache-ttl
max-policy-ttl
max-stale-ttl
max-zone-ttl
min-cache-ttl
min-ncache-ttl
min-update-interval
nta-lifetime
nta-recheck
parent-ds-ttl
parent-propagation-delay
parent-registration-delay
publish-safety
purge-keys
retire-safety
servfail-ttl
signatures-refresh
signatures-validity
signatures-validity-dnskey
stale-answer-ttl
stale-refresh-time
zone-propagation-delay

(I hope “just a moment ago” is a valid time specification ..) Update: it isn’t ;-)