diff options
author | Dag-Erling Smørgrav <des@FreeBSD.org> | 2014-05-14 18:41:34 +0000 |
---|---|---|
committer | Dag-Erling Smørgrav <des@FreeBSD.org> | 2014-05-14 18:41:34 +0000 |
commit | 65be028f32ed37dce84f6328d4a7172132c8c224 (patch) | |
tree | 4edff3f361b23a13a9807a3a0906f9026c3a81a5 /contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm | |
parent | 04f3ab9612d73d7516f230df46e860daf892dc71 (diff) |
import ldns 1.6.17vendor/ldns/1.6.17
Notes
Notes:
svn path=/vendor/ldns/dist/; revision=266072
svn path=/vendor/ldns/1.6.17/; revision=266073; tag=vendor/ldns/1.6.17
Diffstat (limited to 'contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm')
-rw-r--r-- | contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm b/contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm new file mode 100644 index 000000000000..fbd9bb735628 --- /dev/null +++ b/contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm @@ -0,0 +1,85 @@ +package DNS::LDNS::DNSSecRRSets; + +use 5.008008; +use strict; +use warnings; + +use DNS::LDNS; + +our $VERSION = '0.06'; + +# Note: Since this class does not have a constructor, we can let its child +# objects be owned by the parent. This reduces the recursion depth on +# DESTROY. + +sub rrs { + my $self = shift; + return DNS::LDNS::GC::own($self->_rrs, DNS::LDNS::GC::owner($self)); +} + +sub signatures { + my $self = shift; + return DNS::LDNS::GC::own($self->_signatures, DNS::LDNS::GC::owner($self)); +} + +sub next { + my $self = shift; + return DNS::LDNS::GC::own($self->_next, DNS::LDNS::GC::owner($self)); +} + +sub set_type { + my ($self, $type) = @_; + my $s = _set_type($self, $type); + $DNS::LDNS::last_status = $s; + return $s; +} + +sub add_rr { + my ($self, $rr) = @_; + + my $s = _add_rr($self, my $copy = $rr->clone); + $DNS::LDNS::last_status = $s; + DNS::LDNS::GC::own($copy, $self); + return $s; +} + +sub DESTROY { + DNS::LDNS::GC::free($_[0]); +} + +1; +__END__ + +=head1 NAME + +DNS::LDNS::DNSSecRRSets - Linked list of rrsets in a dnssec zone + +=head1 SYNOPSIS + + use DNS::LDNS ':all' + + rrs = rrsets->rrs + rrs = rrsets->signatures + rrsets2 = rrsets->next + rrsets->add_rr(rr) + bool = rrsets->contains_type(rr_type) + rr_type = rrsets->type + rrsets->set_type(rr_type) + +=head1 SEE ALSO + +http://www.nlnetlabs.nl/projects/ldns + +=head1 AUTHOR + +Erik Pihl Ostlyngen, E<lt>erik.ostlyngen@uninett.noE<gt> + +=head1 COPYRIGHT AND LICENSE + +Copyright (C) 2013 by UNINETT Norid AS + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself, either Perl version 5.14.2 or, +at your option, any later version of Perl 5 you may have available. + +=cut |