aboutsummaryrefslogtreecommitdiff
path: root/contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm
diff options
context:
space:
mode:
authorDag-Erling Smørgrav <des@FreeBSD.org>2014-05-14 18:41:34 +0000
committerDag-Erling Smørgrav <des@FreeBSD.org>2014-05-14 18:41:34 +0000
commit65be028f32ed37dce84f6328d4a7172132c8c224 (patch)
tree4edff3f361b23a13a9807a3a0906f9026c3a81a5 /contrib/DNS-LDNS/lib/DNS/LDNS/DNSSecRRSets.pm
parent04f3ab9612d73d7516f230df46e860daf892dc71 (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.pm85
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