Net::DNS::RR::TKEY(3)
π Net::DNS::RR::TKEY
okay bestie, welcome to the Net::DNS::RR::TKEY(3) page β yeah, it lives in the User Contributed Perl Documentation corner of the universe, and it's here to teach you about TKEY resource records. pull up a chair π
πΈ NAME
Net::DNS::RR::TKEY β the DNS TKEY resource record, no cap π
β¨ SYNOPSIS
use Net::DNS;
$rr = new Net::DNS::RR('example.com IN TKEY ... ');
that's literally it, you just spin up an object and go π
π¦ DESCRIPTION
this class is for DNS TSIG Key (TKEY) resource records. yes, TKEY β the key-negotiation cousin of TSIG, and it's giving main character energy π₯
π METHODS
so here's the tea: the methods you get are the ones inherited from the base class, plus the type-specific methods this package defines. best of both worlds, periodt β¨
β οΈ ok real talk β using undocumented package features or reaching directly into internal data structures is discouraged and could result in program termination or other unpredictable behaviour. do not do it, i'm begging ππ
π§ algorithm
$algorithm = $rr->algorithm;
$rr->algorithm( $algorithm );
the algorithm name comes in the form of a domain name, and it means the same thing as it does in [RFC 2845]. what it actually does: the algorithm determines how the secret keying material agreed to using the TKEY RR is actually used to derive the algorithm specific key. so likeβ¦ the algorithm is the blueprint, the keying material is the material, and this field decides how one becomes the other π
β inception
$inception = $rr->inception;
$rr->inception( $inception );
time, expressed as the number of non-leap seconds modulo 2**32 since the beginning of January 1970 GMT. retro math, love that for us π°οΈ
πΈ expiration
$expiration = $rr->expiration;
$rr->expiration( $expiration );
also time, also expressed as the number of non-leap seconds modulo 2**32 since the beginning of January 1970 GMT. same vibe, different field π
π mode
$mode = $rr->mode;
$rr->mode( $mode );
the mode field specifies the general scheme for key agreement or the purpose of the TKEY DNS message, as defined in [RFC2930(2.5)]. so it's basically the "what are we even doing here" field π«Ά
π₯ error
$error = $rr->error;
$rr->error( $error );
the error code field β and it's an extended RCODE, not your basic one. fancy π
π key
$key = $rr->key;
$rr->key( $key );
a sequence of octets representing the key exchange data. the meaning of this data depends on the mode β so don't @ me asking what the bytes mean without checking the mode first, iykyk π
π other
$other = $rr->other;
$rr->other( $other );
content that isn't defined in the [RFC2930] specification, but may be used in future extensions. it's the mystery box field, we love a forward-compatible icon π
π COPYRIGHT
Copyright (c)2000 Andrew Tridgell.
All rights reserved.
Package template (c)2009,2012 O.M.Kolkman and R.W.Franks.
π LICENSE
okay, the legal bit, read it properly bestie:
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the original copyright notices appear in all copies and that both copyright notice and this permission notice appear in supporting documentation, and that the name of the author not be used in advertising or publicity pertaining to distribution of the software without specific prior written permission.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
(translation: free to use, just keep the notices, and no suing anyone. slay π«Ά)
π SEE ALSO
perlNet::DNSNet::DNS::RRRFC2930- <https://iana.org/go/rfc2930>
go read them, they're literally right there π
and that's the whole page, babe π this lil doc shipped as perl v5.42.0, dated 2026-09-02, and it's filed under Net::DNS::RR::TKEY(3) β now go negotiate some keys, you icon π
π¦ where this page comes from
- opensuse-leap 16.0: perl-Net-DNS 1.570.0-bp160.1.1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms