File Coverage

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


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