File Coverage

blib/lib/Net/DNS/RR/PTR.pm
Criterion Covered Total %
statement 31 31 100.0
branch 2 2 100.0
condition n/a
subroutine 10 10 100.0
pod 1 1 100.0
total 44 44 100.0


line stmt bran cond sub pod time code
1             package Net::DNS::RR::PTR;
2              
3 4     4   50 use strict;
  4         12  
  4         165  
4 4     4   28 use warnings;
  4         9  
  4         219  
5             our $VERSION = (qw$Id: PTR.pm 1896 2023-01-30 12:59:25Z willem $)[2];
6              
7 4     4   29 use base qw(Net::DNS::RR);
  4         10  
  4         377  
8              
9              
10             =head1 NAME
11              
12             Net::DNS::RR::PTR - DNS PTR resource record
13              
14             =cut
15              
16 4     4   42 use integer;
  4         11  
  4         25  
17              
18 4     4   192 use Net::DNS::DomainName;
  4         18  
  4         1422  
19              
20              
21             sub _decode_rdata { ## decode rdata from wire-format octet string
22 3     3   10 my ( $self, @argument ) = @_;
23              
24 3         23 $self->{ptrdname} = Net::DNS::DomainName1035->decode(@argument);
25 3         12 return;
26             }
27              
28              
29             sub _encode_rdata { ## encode rdata as wire-format octet string
30 6     6   17 my ( $self, @argument ) = @_;
31              
32 6         8 my $ptrdname = $self->{ptrdname};
33 6         14 return $ptrdname->encode(@argument);
34             }
35              
36              
37             sub _format_rdata { ## format rdata portion of RR string.
38 4     4   6 my $self = shift;
39              
40 4         7 my $ptrdname = $self->{ptrdname};
41 4         9 return $ptrdname->string;
42             }
43              
44              
45             sub _parse_rdata { ## populate RR from rdata in argument list
46 2     2   8 my ( $self, @argument ) = @_;
47              
48 2         6 $self->ptrdname(@argument);
49 2         4 return;
50             }
51              
52              
53             sub ptrdname {
54 5     5 1 35 my ( $self, @value ) = @_;
55 5         10 for (@value) { $self->{ptrdname} = Net::DNS::DomainName1035->new($_) }
  3         9  
56 5 100       27 return $self->{ptrdname} ? $self->{ptrdname}->name : undef;
57             }
58              
59              
60             1;
61             __END__