LSROLL(1)

πŸ“¦
version 2.2.3 Β· 2 versions
, in fedora 43

πŸ’… LSROLL(1) πŸ’…

okay bestie, pull up a chair 🫢 this is lsroll, straight out of the User Contributed Perl Documentation section of the manual, and she's about to tell you everything about the rollrecs in a DNSSEC-Tools rollrec file. literally every detail, no skips, no cap.


✨ NAME ✨

lsroll β€” list the rollrecs in a DNSSEC-Tools rollrec file. that's the whole job and she does it gorgeously πŸŽ€


🌸 SYNOPSIS 🌸

lsroll [options] <rollrec-files>

πŸ¦‹ DESCRIPTION πŸ¦‹

this script lists the contents of the rollrec files you point it at. all the rollrec files get loaded before any output shows up, so it's a whole vibe-check-then-print situation.

and here's the tea πŸ“: if any rollrecs have duplicated names β€” whether that's inside one single file or spread across multiple files β€” the later rollrec is the one whose data get displayed. later one wins, periodt.


πŸ’– OUTPUT FORMATS πŸ’–

what you see for each zone in a rollrec file depends on three things: which records you selected, which attributes you selected, and which output format you picked. every option in those groups gets its own deep-dive in the next section, but the three base output formats β€” plus the default -skip format β€” get described right here. πŸ‘‘

  • -terse means you want a minimal amount of output. tiny. cute. efficient.
  • -long means you want a great deal of output. all of it. every crumb. 🍰

and the record-selection and attribute-selection options can be mixed in with -terse to display exactly the set of rollrec fields you actually need. chef's kiss.

the default output format is what you get when neither -terse nor -long is given, and it's a happy middle ground between the two. main character energy, honestly.

if the -skip option is given, then the default output format is a little more restricted than the normal default. some rollrec fields just don't make sense in the context of a skip record, so they get shown as "---". those fields are:

  • the KSK rollover phase
  • the ZSK rollover phase
  • the TTL value
  • the phase start

🌈 the field-by-format breakdown 🌈

here's which fields show up in which format. yes i'm giving you all seventeen, don't scroll past her πŸ™ˆ

  • rollrec name β€” default yes, terse yes, long yes, skip yes
  • rollrec type β€” default no, terse no, long yes, skip no
  • zonename β€” default no, terse no, long yes, skip yes
  • zone file β€” default yes, terse no, long yes, skip yes
  • zonegroup β€” default no, terse no, long yes, skip no
  • keyrec file β€” default yes, terse no, long yes, skip yes
  • KSK phase β€” default yes, terse no, long yes, skip no
  • ZSK phase β€” default yes, terse no, long yes, skip no
  • administrator β€” default no, terse no, long yes, skip no
  • directory β€” default no, terse no, long yes, skip no
  • logging level β€” default no, terse no, long yes, skip no
  • TTL value β€” default no, terse no, long yes, skip no
  • display flag β€” default no, terse no, long yes, skip no
  • phase start β€” default no, terse no, long yes, skip no
  • last KSK rollover β€” default no, terse no, long yes, skip no
  • last ZSK rollover β€” default no, terse no, long yes, skip no
  • zonesigner arguments β€” default no, terse no, long yes, skip no

πŸŽ€ a note on the rollrec name πŸŽ€

the rollrec name field is often the same as its zonename, but bestie, that is not necessarily the case. the rollrec name can contain spaces while the zonename can't β€” so for that exact reason, lsroll displays the rollrec name in quotes, even when the name has zero spaces in it. it's not being extra, it's doing it so other programs can parse the output more easily. considerate queen. πŸ’…

🧚 the -info option 🧚

if the -info option is given, then the special info rollrec record gets displayed. if the rollrec file has this informational record β€” notated by having the name info rollrec β€” then the contents of the <info rollrec> record get printed.

and if multiple rollrec files are given on the command line? then the info rollrec records for each file get prefixed with that rollrec file's name. organized. 🌸


πŸ‘‘ OPTIONS πŸ‘‘

there are three types of options lsroll recognizes: record-selection options, attribute-selection options, and output-format options. each type gets its own subsection below, because we're thorough in this house. ✨

πŸ“ Record-selection Options πŸ“

these options pick which records lsroll will display. by default, all records get displayed; selecting one of these options restricts the records shown.

and to keep the lsroll code simple and easily understandable, these options are mutually exclusive. pick one, bestie, not all of them. 😭

  • -roll β€” list all "roll" records in the rollrec file.
  • -skip β€” list all "skip" records in the rollrec file.
  • -info β€” list all the fields in the rollrec file's "info" record.

🧚 Attribute-selection Options 🧚

these options pick which attributes of the records get displayed by lsroll.

  • -type β€” include each rollrec record's type in the output. the type will be either "roll" or "skip".
  • -zonename β€” the record's zonename gets included in the output. the zonename is distinct from the record's rollrec name, which is always included in the output. these two fields are often the same, but they don't have to be. in split-zone zones, the rollrec names must be different, while the zonename field stays the same.
  • -zonefile β€” the record's zonefile gets included in the output. this field is part of the default output.
  • -zg β€” the record's zonegroup gets included in the output, wrapped in double quotes. if a rollrec entry doesn't contain a zonegroup, then the value "" is given. and if a record's zonegroup has leading or trailing whitespace, that whitespace gets deleted from the output. tidy. 🧼
  • -keyrec β€” the record's keyrec file gets included in the output. this field is part of the default output.
  • -kskphase β€” the record's KSK rollover phase gets included in the output. if this option is given together with -zskphase, then the output follows the format described for the -phases option. this field is part of the default output.
  • -zskphase β€” the record's ZSK rollover phase gets included in the output. if this option is given together with -kskphase, then the output follows the format described for the -phases option. this field is part of the default output.
  • -phases β€” the record's KSK and ZSK rollover phases both get included in the output. the listing goes KSK phase first, then ZSK phase. here's what that looks like:
KSK phase   ZSK phase       output
    0           0            0/0
    3           0            3/0
    0           5            0/5
  • -admin β€” the record's administrator value gets included in the output. if a rollrec doesn't include an administrator value, then the value (defadmin) is given.
  • -directory β€” the name of the directory holding the zone's files gets included in the output. if a rollrec doesn't include a zone directory, then the value (defdir) is given.
  • -loglevel β€” the rollerd logging level for this zone. this value may be given in the rollrec file in either textual or numeric form. the textual form of the logging level gets displayed, never the numeric one. if a rollrec doesn't include a logging level value, then the value (deflog) is given. and if a rollrec includes an undefined logging level value, then the value (unknownlog) is given. 😭
  • -ttl β€” the record's TTL value gets included in the output.
  • -display β€” the record's display flag β€” the one used by blinkenlights β€” gets included in the output.
  • -phstart β€” the record's rollover phase gets included in the output. if no rollover has been performed for this zone yet, an empty date is given.
  • -lastksk β€” the record's last KSK rollover date gets included in the output. if no KSK rollover has been performed for this zone yet, an empty date is given.
  • -lastzsk β€” the record's last ZSK rollover date gets included in the output. if no ZSK rollover has been performed for this zone yet, an empty date is given.
  • -zsargs β€” the record's user-defined zonesigner arguments get included in the output. if no arguments have been set for this zone, then the value (none) is given.
  • -zonegroup β€” the zonegroups defined in the rollrec get listed, wrapped in double quotes. all other rollrec fields are ignored. and if the -long option is specified, then each zonegroup name is accompanied by the number of rollrec entries in that zonegroup. multi-tasking icon. πŸ‘‘

πŸ’œ Output-format Options πŸ’œ

these options pick the type of output lsroll gives you.

  • -count β€” only a count of matching keyrecs in the rollrec file is given.
  • -headers β€” display explanatory column headers.
  • -terse β€” terse output is given. only the record name and any other fields you specifically selected get included in the output.
  • -long β€” long output is given. all record fields get included.
  • -help β€” display a usage message.
  • -Version β€” displays the version information for lsroll and the DNSSEC-Tools package.

Copyright 2005-2014 SPARTA, Inc. All rights reserved. see the COPYING file included with the DNSSEC-Tools package for the details.


🌟 AUTHOR 🌟

Wayne Morrison, tewok@tislabs.com


πŸ’« SEE ALSO πŸ’«

  • blinkenlights(8), rollchk(8), rollinit(8), rollerd(8)
  • Net::DNS::SEC::Tools::rollrec.pm(3)
  • file-rollrec(5)

and that's the whole page, bestie 🫢 go forth and list those rollrecs. this was lsroll(1), shipped with perl v5.42.0 and dated 2025-07-23 β€” slay, stay hydrated, and always read the man page πŸ’–βœ¨πŸŒˆ

πŸ“¦ where this page comes from