File Coverage

blib/lib/Net/DNS/RR/MINFO.pm
Criterion Covered Total %
statement 39 39 100.0
branch 4 4 100.0
path n/a
condition n/a
subroutine 11 11 100.0
pod 2 2 100.0
total 56 56 100.0


line stmt bran path cond sub pod time code
1               package Net::DNS::RR::MINFO;
2                
3 2       2   11 use strict;
  2           3  
  2           58  
4 2       2   6 use warnings;
  2           3  
  2           135  
5               our $VERSION = (qw$Id: MINFO.pm 2002 2025-01-07 09:57:46Z willem $)[2];
6                
7 2       2   9 use base qw(Net::DNS::RR);
  2           2  
  2           156  
8                
9                
10               =head1 NAME
11                
12               Net::DNS::RR::MINFO - DNS MINFO resource record
13                
14               =cut
15                
16 2       2   9 use integer;
  2           2  
  2           11  
17                
18 2       2   399 use Net::DNS::Mailbox;
  2           4  
  2           680  
19                
20                
21               sub _decode_rdata { ## decode rdata from wire-format octet string
22 1       1   2 my ( $self, $data, $offset, @opaque ) = @_;
23                
24 1           5 ( $self->{rmailbx}, $offset ) = Net::DNS::Mailbox1035->decode( $data, $offset, @opaque );
25 1           4 ( $self->{emailbx}, $offset ) = Net::DNS::Mailbox1035->decode( $data, $offset, @opaque );
26 1           2 return;
27               }
28                
29                
30               sub _encode_rdata { ## encode rdata as wire-format octet string
31 5       5   7 my ( $self, @argument ) = @_;
32 5           7 my ( $offset, @opaque ) = @argument;
33                
34 5           8 my $rdata = $self->{rmailbx}->encode(@argument);
35 5           11 $rdata .= $self->{emailbx}->encode( $offset + length $rdata, @opaque );
36 5           11 return $rdata;
37               }
38                
39                
40               sub _format_rdata { ## format rdata portion of RR string.
41 4       4   5 my $self = shift;
42                
43 4           23 my @rdata = ( $self->{rmailbx}->string, $self->{emailbx}->string );
44 2           6 return @rdata;
45               }
46                
47                
48               sub _parse_rdata { ## populate RR from rdata in argument list
49 1       1   2 my ( $self, @argument ) = @_;
50                
51 1           2 for (qw(rmailbx emailbx)) { $self->$_( shift @argument ) }
  2           5  
52 1           2 return;
53               }
54                
55                
56               sub rmailbx {
57 4       4 1 11 my ( $self, @value ) = @_;
58 4           4 for (@value) { $self->{rmailbx} = Net::DNS::Mailbox1035->new($_) }
  2           6  
59 4 100         17 return $self->{rmailbx} ? $self->{rmailbx}->address : undef;
60               }
61                
62                
63               sub emailbx {
64 6       6 1 1034 my ( $self, @value ) = @_;
65 6           34 for (@value) { $self->{emailbx} = Net::DNS::Mailbox1035->new($_) }
  4           17  
66 6 100         20 return $self->{emailbx} ? $self->{emailbx}->address : undef;
67               }
68                
69                
70               1;
71               __END__