Zonema...DNSSEC(3pm)
β¨ NAME β¨
Zonemaster::Engine::Test::DNSSEC π β the module that runs all the DNSSEC-flavored tests. (The page header calls it Zonema...DNSSEC(3pm), Perl docs love to abbreviate like it's a group chat nickname.)
Think of it as the friend in the group chat whose entire personality is "did you sign your zone tho" π
π SYNOPSIS π
my @results = Zonemaster::Engine::Test::DNSSEC->all( $zone );
π METHODS π
all()
my @logentry_array = all( $zone );
Runs the default set of tests for this module β so like, somewhere between one and seventeen tests, depending on the zone you're checking. Not every zone needs the full lineup, bestie.
The tea β: if DNSSEC07 finds no DNSKEY and no DS RRs, literally nothing else gets run. And if DNSSEC07 does find a DNSKEY RR, then DNSSEC06 gets run. That's the whole vibe check.
- Takes a
Zonemaster::Engine::Zoneobject. - Returns a list of
Zonemaster::Engine::Logger::Entryobjects.
metadata()
my $hash_ref = metadata();
Gives you back a reference to a hash. The keys are the names of all the Test Cases in the module, and each value points to an array holding every message tag that Test Case can use in its log entries. It's giving "table of contents but make it data" π
tag_descriptions()
my $hash_ref = tag_descriptions();
This one is used by the built-in translation system. π
Returns a reference to a hash where the keys are the message tags and the values are strings (message IDs). iykyk.
version()
my $version_string = version();
Returns a string with the version of the current module. Short, sweet, iconic. β
π§ INTERNAL METHODS π§
These are the backstage crew. Don't text them directly unless you know what you're doing, bestie.
_emit_log()
my $log_entry = _emit_log( $message_tag_string, $hash_ref );
Adds a message to the logger for this module. For the full deets, go look at "add($tag, $argref, $module, $testcase)" in Zonemaster::Engine::Logger::Entry. π
- Takes a string (the message tag) and a reference to a hash (the arguments).
- Returns a
Zonemaster::Engine::Logger::Entryobject.
_ip_disabled_message()
my $bool = _ip_disabled_message( $logentry_array_ref, $ns, @query_type_array );
Checks whether the IP version of a given name server is even allowed to be queried. If it's not allowed, it drops a logging message and returns true. If it is allowed, it returns false. Simple as. β¨
- Takes a reference to an array of
Zonemaster::Engine::Logger::Entryobjects, aZonemaster::Engine::Nameserverobject, and an array of strings (the query type). - Returns a boolean.
π§ TESTS π§
Ok so this is the main character section. Seventeen test cases, each one vibing on its own. Every single one of them:
- Takes a
Zonemaster::Engine::Zoneobject. - Returns a list of
Zonemaster::Engine::Logger::Entryobjects.
And yeah β there is no dnssec12(). It's simply not here. We don't talk about it. π (The roster jumps straight from dnssec11() to dnssec13(), no cap.)
dnssec01()
my @logentry_array = dnssec01( $zone );
Runs the DNSSEC01 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec01.md
dnssec02()
my @logentry_array = dnssec02( $zone );
Runs the DNSSEC02 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec02.md
dnssec03()
my @logentry_array = dnssec03( $zone );
Runs the DNSSEC03 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec03.md
dnssec04()
my @logentry_array = dnssec04( $zone );
Runs the DNSSEC04 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec04.md
dnssec05()
my @logentry_array = dnssec05( $zone );
Runs the DNSSEC05 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec05.md
dnssec06()
my @logentry_array = dnssec06( $zone );
Runs the DNSSEC06 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec06.md
dnssec07()
my @logentry_array = dnssec07( $zone );
Runs the DNSSEC07 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec07.md
dnssec08()
my @logentry_array = dnssec08( $zone );
Runs the DNSSEC08 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec08.md
dnssec09()
my @logentry_array = dnssec09( $zone );
Runs the DNSSEC09 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec09.md
dnssec10()
my @logentry_array = dnssec10( $zone );
Runs the DNSSEC10 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec10.md
dnssec11()
my @logentry_array = dnssec11( $zone );
Runs the DNSSEC11 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec11.md
dnssec13()
my @logentry_array = dnssec13( $zone );
Runs the DNSSEC13 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec13.md
dnssec14()
my @logentry_array = dnssec14( $zone );
Runs the DNSSEC14 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec14.md
dnssec15()
my @logentry_array = dnssec15( $zone );
Runs the DNSSEC15 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec15.md
dnssec16()
my @logentry_array = dnssec16( $zone );
Runs the DNSSEC16 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec16.md
dnssec17()
my @logentry_array = dnssec17( $zone );
Runs the DNSSEC17 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec17.md
dnssec18()
my @logentry_array = dnssec18( $zone );
Runs the DNSSEC18 Test Case: https://github.com/zonemaster/zonemaster/blob/master/docs/public/specifications/tests/DNSSEC-TP/dnssec18.md
Reminder bestie: every one of these takes aZonemaster::Engine::Zoneobject and hands you back a list ofZonemaster::Engine::Logger::Entryobjects. Don't forget it. π«Ά
πΈ SEE ALSO πΈ
Hmm, the original page doesn't ship a SEE ALSO section... so there's nothing to reference down here. That's it, that's the list. π€·π
Later, bestie! π This page is from the Zonemaster::Engine::Test::DNSSEC module docs, as rendered for Perl v5.40.1 and dated 2026-03-21. Go forth and validate those signatures. Slay. πβ¨
π¦ where this page comes from
- ubuntu stonking: libzonemaster-perl 8.001.001-1 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms