---
name: "Net::DNS::SEC::Tools::dnssectools"
section: "3pm"
platform: "linux"
package: "dnssec-tools"
version: "2.2.3-16"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Net::DNS::SEC::Tools::dnssectools"
---

# Net::DNS::SEC::Tools::dnssectools(3pm)

General routines for the DNSSEC-Tools package.

## NAME

Net::DNS::SEC::Tools::dnssectools - General routines for the DNSSEC-Tools package.

## SYNOPSIS

```
  use Net::DNS::SEC::Tools::dnssectools;
  dt_adminmail($subject,$msgbody,$recipient);
  $zspath = dt_cmdpath('zonesigner');
  $ftype = dt_findtype($path);
  $seconds = dt_parse_duration("0w3d1h10m20s")
  $rrset = dt_parse_zonefile(file => 'example.com');
```

## DESCRIPTION

The **dnssectools** module provides a general set of methods for use with DNSSEC-Tools utilities.

## INTERFACES

The interfaces to the **dnssectools** module are given below.

- *dt\_adminmail(subject,msgbody,recipient)*

  This routine emails a message to the administrative user listed in the DNSSEC-Tools configuration file.

  ***dt\_adminmail()*** requires two parameters, both scalars. The *subject* parameter is the subject for the mail message. The *msgbody* parameter is the body of the mail message.

  A third parameter, *recipient*, may be given to specify the message's recipient.  If this is not given, then the recipient will be taken from the *admin-email* record of the DNSSEC-Tools configuration file. If *recipient* is "nomail", then no message will be sent and success will be returned.

  Return values:

  ```
          1 - the message was created and sent.
          0 - an invalid recipient was specified.
  ```

It relies on the the following dnssec-tools.conf configuration parameters:

- *admin-email*

  The email address that the mail should come from.

- *mailer-type*

  Should be one of: *sendmail, smtp, qmail*.  This option is not required and will default to trying sendmail and qmail to deliver the mail.  If *mailer-server* is set to a defined value but *mailer-type* is not, then *mailer-type* will default to

- *mailer-server*

  The server, if *admin-mail* is set to *smtp*, that the mail should be delivered to.

- *dt\_cmdpath(command)*

  This routine returns the path to a specified DNSSEC-Tools command. *command* should be the name only, without any leading directories. The command name is checked to ensure that it is a valid DNSEC-Tools command,

  Return values:

  ```
          The absolute path to the command is returned if the command
          is valid.
          Null is returned if the command is not valid.
  ```

- *dt\_filetype(path)*

  This routine returns the type of the file named in *path*.  The rollrec and keyrec records contained therein are counted and a type determination is made.

  Return values:

  ```
          "keyrec" -  At least one keyrec record was found and no
                      rollrec records were found.
          "rollrec" - At least one rollrec record was found and
                      no keyrec records were found.
          "mixed" -   At least one rollrec record and at least one
                      keyrec record were found.
                      This is most likely an erroneous file.
          "unknown" - No rollrec records nor keyrec records
                      were found.
          "nofile"  - The specified file does not exist.
  ```

- *dt\_parse\_duration(string)*

  This routine translates a duration given in "1w2d3h4m5s" format and returns the equivalent number of seconds, or undef if the duration has an invalid format.

- *dt\_parse\_zonefile(options)*

  This routine parses a given zone file using the configured zone file parser and returns an array reference containing the RRs.

  The zone parser to be used depends on the setting of the *zonefile-parser* configuration value.  If this is not set, then the **Net::DNS::ZoneFile** zone parser will be used (obsolete option: this is the only currently supported parser).

## COPYRIGHT

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

## AUTHOR

Wayne Morrison, tewok@tislabs.com

## SEE ALSO

**Mail::Send.pm(3)**, **Net::DNS::SEC::Tools::conf.pm(3)**
