Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package perl-Net-DNS for openSUSE:Factory checked in at 2021-01-20 18:23:22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Net-DNS (Old) and /work/SRC/openSUSE:Factory/.perl-Net-DNS.new.28504 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Net-DNS" Wed Jan 20 18:23:22 2021 rev:64 rq:864269 version:1.29 Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Net-DNS/perl-Net-DNS.changes 2020-11-02 09:36:46.297401406 +0100 +++ /work/SRC/openSUSE:Factory/.perl-Net-DNS.new.28504/perl-Net-DNS.changes 2021-01-20 18:23:30.647312540 +0100 @@ -1,0 +2,8 @@ +Mon Jan 18 23:12:21 UTC 2021 - Dirk M??ller <dmuel...@suse.com> + +- update to 1.29 + Include test number in summary of failed non-fatal tests. + Remove Net::DNS::SEC specific tests. + Fix faulty test plan in t/08-recurse.t. + +------------------------------------------------------------------- Old: ---- Net-DNS-1.28.tar.gz New: ---- Net-DNS-1.29.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Net-DNS.spec ++++++ --- /var/tmp/diff_new_pack.hCZqPz/_old 2021-01-20 18:23:31.315313034 +0100 +++ /var/tmp/diff_new_pack.hCZqPz/_new 2021-01-20 18:23:31.319313037 +0100 @@ -1,7 +1,7 @@ # # spec file for package perl-Net-DNS # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,18 +16,16 @@ # +%define cpan_name Net-DNS Name: perl-Net-DNS -Version: 1.28 +Version: 1.29 Release: 0 -%define cpan_name Net-DNS Summary: Perl Interface to the Domain Name System License: MIT Group: Development/Libraries/Perl URL: https://metacpan.org/release/%{cpan_name} Source0: https://cpan.metacpan.org/authors/id/N/NL/NLNETLABS/%{cpan_name}-%{version}.tar.gz Source1: cpanspec.yml -BuildArch: noarch -BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: perl BuildRequires: perl-macros BuildRequires: perl(Carp) >= 1.1 @@ -49,6 +47,7 @@ Requires: perl(Time::Local) >= 1.19 Recommends: perl(Digest::BubbleBabble) >= 0.01 Recommends: perl(Net::LibIDN2) >= 1 +BuildArch: noarch %{perl_requires} %description @@ -64,10 +63,10 @@ %build perl Makefile.PL INSTALLDIRS=vendor -make %{?_smp_mflags} +%make_build %check -make test +%make_build test %install %perl_make_install ++++++ Net-DNS-1.28.tar.gz -> Net-DNS-1.29.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/Changes new/Net-DNS-1.29/Changes --- old/Net-DNS-1.28/Changes 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/Changes 2020-11-18 14:18:24.000000000 +0100 @@ -1,4 +1,11 @@ -$Id: Changes 1821 2020-10-23 14:40:41Z willem $ -*-text-*- +$Id: Changes 1826 2020-11-18 13:18:18Z willem $ -*-text-*- + + +**** 1.29 Nov 18, 2020 + + Include test number in summary of failed non-fatal tests. + Remove Net::DNS::SEC specific tests. + Fix faulty test plan in t/08-recurse.t. **** 1.28 Oct 23, 2020 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/MANIFEST new/Net-DNS-1.29/MANIFEST --- old/Net-DNS-1.28/MANIFEST 2020-10-23 16:41:51.000000000 +0200 +++ new/Net-DNS-1.29/MANIFEST 2020-11-18 14:18:31.000000000 +0100 @@ -200,8 +200,6 @@ t/51-DS-SHA1.t t/52-DS-SHA256.t t/54-DS-SHA384.t -t/61-SIG0-RSAMD5.t -t/65-RRSIG-RSASHA1.t t/71-TSIG-create.t t/72-TSIG-verify.t t/99-cleanup.t diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/META.json new/Net-DNS-1.29/META.json --- old/Net-DNS-1.28/META.json 2020-10-23 16:41:51.000000000 +0200 +++ new/Net-DNS-1.29/META.json 2020-11-18 14:18:31.000000000 +0100 @@ -6,7 +6,7 @@ "Michael Fuhr" ], "dynamic_config" : 1, - "generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010", + "generated_by" : "ExtUtils::MakeMaker version 7.54, CPAN::Meta::Converter version 2.150010", "license" : [ "mit" ], @@ -69,6 +69,6 @@ } }, "release_status" : "stable", - "version" : "1.28", - "x_serialization_backend" : "JSON::PP version 4.04" + "version" : "1.29", + "x_serialization_backend" : "JSON::PP version 4.05" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/META.yml new/Net-DNS-1.29/META.yml --- old/Net-DNS-1.28/META.yml 2020-10-23 16:41:51.000000000 +0200 +++ new/Net-DNS-1.29/META.yml 2020-11-18 14:18:31.000000000 +0100 @@ -16,7 +16,7 @@ IO::File: '1.08' IO::Socket::IP: '0.38' dynamic_config: 1 -generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010' +generated_by: 'ExtUtils::MakeMaker version 7.54, CPAN::Meta::Converter version 2.150010' license: mit meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -46,5 +46,5 @@ Scalar::Util: '1.25' Time::Local: '1.19' perl: '5.008008' -version: '1.28' +version: '1.29' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/lib/Net/DNS/Domain.pm new/Net-DNS-1.29/lib/Net/DNS/Domain.pm --- old/Net-DNS-1.28/lib/Net/DNS/Domain.pm 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/lib/Net/DNS/Domain.pm 2020-11-18 14:18:24.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use warnings; -our $VERSION = (qw$Id: Domain.pm 1816 2020-10-16 09:44:21Z willem $)[2]; +our $VERSION = (qw$Id: Domain.pm 1825 2020-11-18 13:15:01Z willem $)[2]; =head1 NAME @@ -26,8 +26,8 @@ has a fixed identity throughout its lifetime. Internally, the primary representation is a (possibly empty) list -of ASCII domain name labels, and optional link to an arbitrary -origin domain object topologically closer to the DNS root. +of ASCII domain name labels, and optional link to an origin domain +object topologically closer to the DNS root. The computational expense of Unicode character-set conversion is partially mitigated by use of caches. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/lib/Net/DNS/Parameters.pm new/Net-DNS-1.29/lib/Net/DNS/Parameters.pm --- old/Net-DNS-1.28/lib/Net/DNS/Parameters.pm 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/lib/Net/DNS/Parameters.pm 2020-11-18 14:18:24.000000000 +0100 @@ -1,23 +1,21 @@ package Net::DNS::Parameters; -use strict; -use warnings; - -our $VERSION = (qw$Id: Parameters.pm 1812 2020-10-07 18:09:53Z willem $)[2]; - - ################################################ ## ## Domain Name System (DNS) Parameters -## (last updated 2020-07-20) +## (last updated 2020-10-26) ## ################################################ +use strict; +use warnings; +our $VERSION = (qw$Id: Parameters.pm 1823 2020-11-16 16:29:45Z willem $)[2]; use integer; use Carp; use base qw(Exporter); + our @EXPORT_OK = qw( classbyname classbyval %classbyname typebyname typebyval %typebyname @@ -26,6 +24,7 @@ ednsoptionbyname ednsoptionbyval dsotypebyname dsotypebyval ); + our %EXPORT_TAGS = ( class => [qw(classbyname classbyval)], type => [qw(typebyname typebyval)], @@ -205,7 +204,7 @@ PADDING => 12, # RFC7830 CHAIN => 13, # RFC7901 'KEY-TAG' => 14, # RFC8145 - 'EXTENDED-ERROR' => 15, # RFC-ietf-dnsop-extended-error-16 + 'EXTENDED-ERROR' => 15, # RFC8914 'CLIENT-TAG' => 16, # draft-bellis-dnsop-edns-tags 'SERVER-TAG' => 17, # draft-bellis-dnsop-edns-tags DEVICEID => 26946, # https://docs.umbrella.com/developer/networkdevices-api/identifying-dns-traffic2 @@ -379,8 +378,9 @@ our $DNSEXTLANG = EXTLANG ? eval { Net::DNS::Extlang->new()->domain } : undef; -sub _typespec { ## draft-levine-dnsextlang - eval <<'END' if EXTLANG && $DNSEXTLANG;## no critic +sub _typespec { + eval { ## draft-levine-dnsextlang + <<'END' } if EXTLANG && $DNSEXTLANG; my ($node) = @_; require Net::DNS::Resolver; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/lib/Net/DNS/RR/OPT.pm new/Net-DNS-1.29/lib/Net/DNS/RR/OPT.pm --- old/Net-DNS-1.28/lib/Net/DNS/RR/OPT.pm 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/lib/Net/DNS/RR/OPT.pm 2020-11-18 14:18:24.000000000 +0100 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = (qw$Id: OPT.pm 1812 2020-10-07 18:09:53Z willem $)[2]; +our $VERSION = (qw$Id: OPT.pm 1823 2020-11-16 16:29:45Z willem $)[2]; use base qw(Net::DNS::RR); @@ -280,7 +280,7 @@ sub _image { join ' => ', &_decompose; } -package Net::DNS::RR::OPT::COOKIE; # draft-ietf-dnsop-server-cookies +package Net::DNS::RR::OPT::COOKIE; # RFC7873 my @field10 = qw(VERSION RESERVED TIMESTAMP HASH); @@ -366,7 +366,7 @@ sub _image { &_decompose; } -package Net::DNS::RR::OPT::EXTENDED_ERROR; # draft-ietf-dnsop-extended-error +package Net::DNS::RR::OPT::EXTENDED_ERROR; # RFC8914 my @field15 = qw(INFO-CODE EXTRA-TEXT); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/lib/Net/DNS/RR/SVCB.pm new/Net-DNS-1.29/lib/Net/DNS/RR/SVCB.pm --- old/Net-DNS-1.28/lib/Net/DNS/RR/SVCB.pm 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/lib/Net/DNS/RR/SVCB.pm 2020-11-18 14:18:24.000000000 +0100 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = (qw$Id: SVCB.pm 1814 2020-10-14 21:49:16Z willem $)[2]; +our $VERSION = (qw$Id: SVCB.pm 1823 2020-11-16 16:29:45Z willem $)[2]; use base qw(Net::DNS::RR); @@ -343,8 +343,8 @@ =head2 keyNN - $keyNN = $rr->keyNN; - $rr->keyNN( $keyNN ); + $keynn = $rr->keyNN; + $rr->keyNN( $keynn ); Generic constructor and accessor methods for SvcParams. The key index NN is a decimal integer in the range 0 .. 65534. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/lib/Net/DNS.pm new/Net-DNS-1.29/lib/Net/DNS.pm --- old/Net-DNS-1.28/lib/Net/DNS.pm 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/lib/Net/DNS.pm 2020-11-18 14:18:24.000000000 +0100 @@ -4,9 +4,9 @@ use warnings; our $VERSION; -$VERSION = '1.28'; +$VERSION = '1.29'; $VERSION = eval { $VERSION }; -our $SVNVERSION = (qw$Id: DNS.pm 1821 2020-10-23 14:40:41Z willem $)[2]; +our $SVNVERSION = (qw$Id: DNS.pm 1826 2020-11-18 13:18:18Z willem $)[2]; =head1 NAME diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/t/00-load.t new/Net-DNS-1.29/t/00-load.t --- old/Net-DNS-1.28/t/00-load.t 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/t/00-load.t 2020-11-18 14:18:24.000000000 +0100 @@ -1,16 +1,13 @@ #!/usr/bin/perl -# $Id: 00-load.t 1818 2020-10-18 15:24:42Z willem $ -*-perl-*- +# $Id: 00-load.t 1823 2020-11-16 16:29:45Z willem $ -*-perl-*- # use strict; use warnings; use Test::More; -use Net::DNS::RR::RRSIG; ## preempt Net::DNS::SEC configuration - my @module = qw( Net::DNS - Net::DNS::SEC Digest::BubbleBabble Digest::HMAC Digest::MD5 @@ -19,10 +16,8 @@ File::Spec IO::File IO::Select - IO::Socket::INET IO::Socket::IP MIME::Base64 - Net::LibIDN Net::LibIDN2 PerlIO Scalar::Util diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/t/08-recurse.t new/Net-DNS-1.29/t/08-recurse.t --- old/Net-DNS-1.28/t/08-recurse.t 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/t/08-recurse.t 2020-11-18 14:18:24.000000000 +0100 @@ -1,5 +1,5 @@ #!/usr/bin/perl -# $Id: 08-recurse.t 1815 2020-10-14 21:55:18Z willem $ -*-perl-*- +# $Id: 08-recurse.t 1822 2020-10-29 10:54:43Z willem $ -*-perl-*- # use strict; @@ -21,8 +21,6 @@ exit( plan skip_all => 'Online tests disabled.' ) if -e 't/online.disabled'; exit( plan skip_all => 'Online tests disabled.' ) unless -e 't/online.enabled'; -plan tests => 10; - eval { my $resolver = Net::DNS::Resolver->new(); @@ -53,6 +51,8 @@ } || exit( plan skip_all => 'Unable to reach global root nameservers' ); +plan tests => 10; + NonFatalBegin(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/t/61-SIG0-RSAMD5.t new/Net-DNS-1.29/t/61-SIG0-RSAMD5.t --- old/Net-DNS-1.28/t/61-SIG0-RSAMD5.t 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/t/61-SIG0-RSAMD5.t 1970-01-01 01:00:00.000000000 +0100 @@ -1,221 +0,0 @@ -#!/usr/bin/perl -# $Id: 61-SIG0-RSAMD5.t 1815 2020-10-14 21:55:18Z willem $ -*-perl-*- -# - -use strict; -use warnings; -use IO::File; -use Test::More; - -my %prerequisite = ( - 'MIME::Base64' => 2.13, - 'Net::DNS::SEC' => 1.01, - 'Time::Local' => 1.19, - ); - -foreach my $package ( sort keys %prerequisite ) { - my @revision = grep {$_} $prerequisite{$package}; - next if eval "use $package @revision; 1;"; ## no critic - plan skip_all => "$package not installed"; - exit; -} - -plan tests => 29; - - -my $key = Net::DNS::RR->new( <<'END' ); -RSAMD5.example. IN KEY 512 3 1 ( - AwEAAcUHtdNvhdBKMkUle+MJ+ntJ148yfsITtZC0g93EguURfU113BQVk6tzgXP/aXs4OptkCgrL - sTapAZr5+vQ8jNbLp/uUTqEUzBRMBqi0W78B3aEb7vEsC0FB6VLoCcjylDcKzzWHm4rj1ACN2Zbu - 6eT88lDYHTPiGQskw5LGCze7 ) ; Key ID = 2871 -END - -ok( $key, 'set up RSA public key' ); - - -my $keyfile = $key->privatekeyname; - -END { unlink($keyfile) if defined $keyfile; } - -my $handle = IO::File->new( $keyfile, '>' ) || die "$keyfile $!"; -print $handle <<'END'; -Private-key-format: v1.2 -Algorithm: 1 (RSA) -Modulus: xQe102+F0EoyRSV74wn6e0nXjzJ+whO1kLSD3cSC5RF9TXXcFBWTq3OBc/9pezg6m2QKCsuxNqkBmvn69DyM1sun+5ROoRTMFEwGqLRbvwHdoRvu8SwLQUHpUugJyPKUNwrPNYebiuPUAI3Zlu7p5PzyUNgdM+IZCyTDksYLN7s= -PublicExponent: AQAB -PrivateExponent: yOATgH0y8Ci1F8ofhFmoBgpCurvAgB2X/vALgQ3YZbJvDYob1l4pL6OTV7AO2pF5LvPPSTJielfUSyyRrnANJSST/Dr19DgpSpnY2GWE7xmJ6/QqnIaJ2+10pFzVRXShijJZjt9dY7JXmNIoQ+JseE08aquKHFEGVfsvkThk8Q== -Prime1: 9lyWnGhbZZwVQo/qNHjVeWEDyc0hsc/ynT4Qp/AjVhROY+eJnBEvhtmqj3sq2gDQm2ZfT8uubSH5ZkNrnJjL2Q== -Prime2: zL0L5kwZXqUyRiPqZgbhFEib210WZne+AI88iyi39tU/Iplx1Q6DhHmOuPhUgCCj2nqQhWs9BAkQwemLylfHsw== -Exponent1: rcETgHChtYJmBDIYTrXCaf8get2wnAY76ObzPF7DrVxZBWExzt7YFFXEU7ncuTDF8DQ9mLvg45uImLWIWkPx0Q== -Exponent2: qtb8vPi3GrDCGKETkHshCank09EDRhGY7CKZpI0fpMogWqCrydrIh5xfKZ2d9SRHVaF8QrhPO7TM1OIqkXdZ3Q== -Coefficient: IUxSSCxp+TotMTbloOt/aTtxlaz0b5tSS7dBoLa7//tmHZvHQjftEw8KbXC89QhHd537YZX4VcK/uYbU6SesRA== -END -close($handle); - -my $private = Net::DNS::SEC::Private->new($keyfile); -ok( $private, 'set up RSA private key' ); - - -my $bad1 = Net::DNS::RR->new( <<'END' ); -RSAMD5.example. IN KEY 512 3 1 ( - AwEAAdDembFMoX8rZTqTjHT8PbCZHbTJpDgtuL0uXpJqPZ6ZKnGdQsXVn4BSs8VJlH7+NEv+7Spq - Ncxjx6o86HhrvFg5DsDMhEi5MIqlt1OcUYa0zUhFSkb+yzOSnPL7doSoaW8pxoX4uDemkfyOY9xN - tNCNBJcvmp1Uvdnttf7LUorD ) ; Key ID = 21130 -END - - -my $bad2 = Net::DNS::RR->new( <<'END' ); -RSASHA1.example. IN KEY ( 512 3 5 - AwEAAcosvYOe384kf7szGV4YxwfliKk9VTlO8HEQnlQs4glpMwtwCm8E9zxQRMG1W9CsM7tcHKq8 - 52KcapenPMkYCseeI7sRtD4k5eF6Us7SaYNRYG6qBhXkSRr41aTroqq+I9IMgAGMzUpC2a9rzn+f - Hs5pZA2CKzoR1+9Jv4vKu5MF ) ; Key ID = 16351 -END - - -{ - my $packet = Net::DNS::Packet->new('example'); - $packet->sign_sig0($keyfile); - $packet->data; - ok( $packet->sigrr->sigbin, 'sign packet using private key' ); - - my $verified = $packet->verify($key); - ok( $verified, 'verify packet using public key' ); - is( $packet->verifyerr, '', 'observe no packet->verifyerr' ); -} - - -{ - my $packet = Net::DNS::Packet->new('example'); - $packet->sign_sig0($keyfile); - my $buffer = $packet->data; - - my $decoded = Net::DNS::Packet->new( \$buffer ); - my $verified = $decoded->verify($key); - ok( $verified, 'verify decoded packet using public key' ); - is( $decoded->verifyerr, '', 'observe no packet->verifyerr' ); -} - - -{ - my $packet = Net::DNS::Packet->new('example'); - $packet->sign_sig0($keyfile); - $packet->data; - - my $verified = $packet->verify($bad1); - ok( !$verified, 'verify fails using wrong key' ); - ok( $packet->verifyerr, 'observe packet->verifyerr' ); -} - - -{ - my $packet = Net::DNS::Packet->new('example'); - $packet->sign_sig0($keyfile); - $packet->data; - - my $verified = $packet->verify($bad2); - ok( !$verified, 'verify fails using wrong key' ); - ok( $packet->verifyerr, 'observe packet->verifyerr' ); -} - - -{ - my $packet = Net::DNS::Packet->new('example'); - $packet->sign_sig0($keyfile); - $packet->data; - - $packet->push( answer => rr_add('bogus. A 10.1.2.3') ); - my $verified = $packet->verify($key); - ok( !$verified, 'verify fails for modified packet' ); - ok( $packet->verifyerr, 'observe packet->verifyerr' ); -} - - -{ - my $packet = Net::DNS::Packet->new('example'); - $packet->sign_sig0($keyfile); - $packet->data; - - my $verified = $packet->verify( [$bad1, $bad2, $key] ); - ok( $verified, 'verify packet using array of keys' ); - is( $packet->verifyerr, '', 'observe no packet->verifyerr' ); -} - - -{ - my $packet = Net::DNS::Packet->new('example'); - $packet->sign_sig0($keyfile); - $packet->data; - - $packet->push( answer => rr_add('bogus. A 10.1.2.3') ); - my $verified = $packet->verify( [$bad1, $bad2, $key] ); - ok( !$verified, 'verify failure using array of keys' ); - ok( $packet->verifyerr, 'observe packet->verifyerr' ); -} - - -{ - my $data = Net::DNS::Packet->new('example')->data; - my $sig = create Net::DNS::RR::SIG( $data, $keyfile ); - ok( $sig->sigbin, 'create SIG over data using private key' ); - - my $verified = $sig->verify( $data, $key ); - ok( $verified, 'verify data using public key' ); - is( $sig->vrfyerrstr, '', 'observe no sig->vrfyerrstr' ); -} - - -{ - my $data = Net::DNS::Packet->new('example')->data; - my $time = time() + 3; - my %args = ( - siginception => $time, - sigexpiration => $time, - ); - my $object = create Net::DNS::RR::SIG( $data, $keyfile, %args ); - - ok( !$object->verify( $data, $key ), 'verify fails for postdated SIG' ); - ok( $object->vrfyerrstr, 'observe sig->vrfyerrstr' ); - sleep 1 until $time < time(); - ok( !$object->verify( $data, $key ), 'verify fails for expired SIG' ); - ok( $object->vrfyerrstr, 'observe sig->vrfyerrstr' ); -} - - -{ - my $object = Net::DNS::RR->new( type => 'SIG' ); - my $keyrec = Net::DNS::RR->new( type => 'KEY' ); - my $nonkey = Net::DNS::RR->new( type => 'DS' ); - my $packet = Net::DNS::Packet->new(); - my $array = []; - my @testcase = ( ## test verify() with invalid arguments - [$array, $keyrec], - [$object, $keyrec], - [$packet, $keyrec], - [$packet, $nonkey], - ); - - foreach my $arglist (@testcase) { - my @argtype = map { ref($_) } @$arglist; - $object->typecovered('A'); # induce failure - eval { $object->verify(@$arglist); }; - my ($exception) = split /\n/, "$@\n"; - ok( $exception, "verify(@argtype)\t[$exception]" ); - } -} - - -{ - my $packet = Net::DNS::Packet->new('query.example'); - $packet->sign_sig0($keyfile); - my $signed = $packet->data; # signing occurs in SIG->encode - $packet->sigrr->sigbin(''); # signature destroyed - my $unsigned = eval { $packet->data }; # unable to regenerate SIG0 - my ($exception) = split /\n/, "$@\n"; - ok( $exception, "missing key\t[$exception]" ); -} - - -exit; - -__END__ - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/t/65-RRSIG-RSASHA1.t new/Net-DNS-1.29/t/65-RRSIG-RSASHA1.t --- old/Net-DNS-1.28/t/65-RRSIG-RSASHA1.t 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/t/65-RRSIG-RSASHA1.t 1970-01-01 01:00:00.000000000 +0100 @@ -1,232 +0,0 @@ -#!/usr/bin/perl -# $Id: 65-RRSIG-RSASHA1.t 1815 2020-10-14 21:55:18Z willem $ -*-perl-*- -# - -use strict; -use warnings; -use IO::File; -use Test::More; - -my %prerequisite = ( - 'MIME::Base64' => 2.13, - 'Net::DNS::SEC' => 1.01, - 'Time::Local' => 1.19, - ); - -foreach my $package ( sort keys %prerequisite ) { - my @revision = grep {$_} $prerequisite{$package}; - next if eval "use $package @revision; 1;"; ## no critic - plan skip_all => "$package not installed"; - exit; -} - -plan tests => 32; - - -my $ksk = Net::DNS::RR->new( <<'END' ); -RSASHA1.example. IN DNSKEY 257 3 5 ( - AwEAAefP0RzK3K39a5wznjeWA1PssI2dxqPb9SL+ppY8wcimOuEBmSJP5n6/bwg923VFlRiYJHe5 - if4saxWCYenQ46hWz44sK943K03tfHkxo54ayAk/7dMj1wQ7Dby5FJ1AAMGZZO65BlKSD+2BTcwp - IL9mAYuhHYfkG6FTEEKgHVmOVmtyKWA3gl3RrSSgXzTWnUS5b/jEeh2SflXG9eXabaoVXEHQN+oJ - dTiAiErZW4+Zlx5pIrSycZBpIdWvn4t71L3ik6GctQqG9ln12j2ngji3blVI3ENMnUc237jUeYsy - k7E5TughQctLYOFXHaeTMgJt0LUTyv3gIgDTRmvgQDU= ) ; Key ID = 4501 -END - -ok( $ksk, 'set up RSA public ksk' ); - - -my $keyfile = $ksk->privatekeyname; - -END { unlink($keyfile) if defined $keyfile; } - -my $handle = IO::File->new( $keyfile, '>' ) || die "$keyfile $!"; -print $handle <<'END'; -Private-key-format: v1.2 -Algorithm: 5 (RSASHA1) -Modulus: 58/RHMrcrf1rnDOeN5YDU+ywjZ3Go9v1Iv6mljzByKY64QGZIk/mfr9vCD3bdUWVGJgkd7mJ/ixrFYJh6dDjqFbPjiwr3jcrTe18eTGjnhrICT/t0yPXBDsNvLkUnUAAwZlk7rkGUpIP7YFNzCkgv2YBi6Edh+QboVMQQqAdWY5Wa3IpYDeCXdGtJKBfNNadRLlv+MR6HZJ+Vcb15dptqhVcQdA36gl1OICIStlbj5mXHmkitLJxkGkh1a+fi3vUveKToZy1Cob2WfXaPaeCOLduVUjcQ0ydRzbfuNR5izKTsTlO6CFBy0tg4Vcdp5MyAm3QtRPK/eAiANNGa+BANQ== -PublicExponent: AQAB -PrivateExponent: qVfDp4j61ZAAAMgkmO7Z14FdKNdNuX6CAeKNx8rytaXZ9W25dLtx4r3uWtL1cyI13RWn7l54VFoWkEwDQ0/6P4vLbE0QbvFWjUMkX1TH9kQSRc+R6WCRPuH1Ex0R1h5fbw6kEVDRMZjKUfLX5oFVDv1xu5Mjg5Y8KQoJIuLdDgHtRRV7ZETcGcSXBQ1eY2rNxui2YzM0mtqzApgGq7pLb3GfiM5aqW5fSdRaFajGC2VIXkN3jZYxAryT8EYJ6uRFJk0X3VegEwj6keHOem/tBV2DaNlv1JWidauPeU67evKNTQVW3h3AbQxnOtegdWrRKoa9Ksf27bgoKAlveHIfsQ== -Prime1: +s1y+iP+AoB4UVS4S5njIZD21AWm36JTaqEvRPdevjuzc9q7yJATROdRdcAitdSPHeRC8xtQw/C9zGhJRdynlxfmUTeyYgM0EYHYiG7PLwkW5Wu9EeXJ7/Fpct51L+ednloQ0d7tYP/5QUd6cqbFGGKH0yF5zZMO0k+ZZ/saeCs= -Prime2: 7J2eVZ5Psue4BTNya8PMA89cC0Gf51zFeQ8dPBZIOpN28DJN2EN6C6fwGtnr6BO+M/6loXzcekPGgRkpNcQ6MzJup8hZQmU8RxESAMlmQzOtaBbtmMwPa0p6IcZBUWpbRaKwQ4ZjAUS9R13PFwgEU+a855o0XRRTupdmyZ6OmR8= -Exponent1: nGakbdMmIx9EaMuhRhwIJTWGhz+jCdDrnhI4LRTqM019oiDke7VFHvH1va18t9F/Ek/3ZC1Dl304jxD1qKhqpnGUAk/uYOrIfKZxhts7PoS3j4g5VsDqxkPQ035gq+gPReG6nXYcqCHYqVnOxVK0lHlVZFd64rTzSDm1W7+eiRM= -Exponent2: evAuKygVGsxghXtEkQ9rOfOMTGDtdyVxiMO8mdKt9plV69kHLz1n9RRtoVXmx28ynQtK/YvFdlUulzb+fWwWHTGv4scq8V9uITKSWwxJcNMx3upCyugDfuh0aoX6vBV5lMXBtWPmnusbOTBZgArvTLSPI/qwCEiedE1j34/dYVs= -Coefficient: JTEzUDflC+G0if7uqsJ2sw/x2aCHMjsCxYSmx2bJOW/nhQTQpzafL0N8E6WmKuEP4qAaqQjWrDyxy0XcAJrfcojJb+a3j2ndxYpev7Rq8f7P6M7qqVL0Nzj9rWFH7pyvWMnH584viuhPcDogy8ymHpNNuAF+w98qjnGD8UECiV4= -END -close($handle); - -my $private = Net::DNS::SEC::Private->new($keyfile); -ok( $private, 'set up RSA private key' ); - - -my $bad1 = Net::DNS::RR->new( <<'END' ); -RSASHA1.example. IN DNSKEY 256 3 5 ( - AwEAAZHbngk6sMoFHN8fsYY6bmGR4B9UYJIqDp+mORLEH53Xg0f6RMDtfx+H3/x7bHTUikTr26bV - AqsxOs2KxyJ2Xx9RGG0DB9O4gpANljtTq2tLjvaQknhJpSq9vj4CqUtr6Wu152J2aQYITBoQLHDV - i8mIIunparIKDmhy8TclVXg9 ) ; Key ID = 1623 -END - - -my $bad2 = Net::DNS::RR->new( <<'END' ); -ECDSAP256SHA256.example. IN DNSKEY ( 256 3 13 - 7Y4BZY1g9uzBwt3OZexWk7iWfkiOt0PZ5o7EMip0KBNxlBD+Z58uWutYZIMolsW8v/3rfgac45lO - IikBZK4KZg== ) ; Key ID = 44222 -END - - -my @rrset = ( $bad1, $ksk ); -my @badrrset = ($bad1); - -{ - my $object = Net::DNS::RR::RRSIG->create( \@rrset, $keyfile ); - ok( $object->sig(), 'create RRSIG over rrset using private ksk' ); - - my $verified = $object->verify( \@rrset, $ksk ); - ok( $verified, 'verify using public ksk' ); - is( $object->vrfyerrstr, '', 'observe no object->vrfyerrstr' ); -} - - -{ - my $object = Net::DNS::RR::RRSIG->create( \@rrset, $keyfile ); - - my $verified = $object->verify( \@badrrset, $bad1 ); - ok( !$verified, 'verify fails using wrong key' ); - ok( $object->vrfyerrstr, 'observe rrsig->vrfyerrstr' ); -} - - -{ - my $object = Net::DNS::RR::RRSIG->create( \@rrset, $keyfile ); - - my $verified = $object->verify( \@badrrset, $bad2 ); - ok( !$verified, 'verify fails using key with wrong algorithm' ); - ok( $object->vrfyerrstr, 'observe rrsig->vrfyerrstr' ); -} - - -{ - my $object = Net::DNS::RR::RRSIG->create( \@rrset, $keyfile ); - - my $verified = $object->verify( \@rrset, [$bad1, $bad2, $ksk] ); - ok( $verified, 'verify using array of keys' ); - is( $object->vrfyerrstr, '', 'observe no rrsig->vrfyerrstr' ); -} - - -{ - my $object = Net::DNS::RR::RRSIG->create( \@rrset, $keyfile ); - - my $verified = $object->verify( \@badrrset, [$bad1, $bad2, $ksk] ); - ok( !$verified, 'verify fails using wrong rrset' ); - ok( $object->vrfyerrstr, 'observe rrsig->vrfyerrstr' ); -} - - -{ - my $wild = Net::DNS::RR->new('*.example. A 10.1.2.3'); - my $match = Net::DNS::RR->new('leaf.twig.example. A 10.1.2.3'); - my $object = Net::DNS::RR::RRSIG->create( [$wild], $keyfile ); - - my $verified = $object->verify( [$match], $ksk ); - ok( $verified, 'wildcard matches child domain name' ); - is( $object->vrfyerrstr, '', 'observe no rrsig->vrfyerrstr' ); -} - - -{ - my $wild = Net::DNS::RR->new('*.example. A 10.1.2.3'); - my $bogus = Net::DNS::RR->new('example. A 10.1.2.3'); - my $object = Net::DNS::RR::RRSIG->create( [$wild], $keyfile ); - - my $verified = $object->verify( [$bogus], $ksk ); - ok( !$verified, 'wildcard does not match parent domain' ); - ok( $object->vrfyerrstr, 'observe rrsig->vrfyerrstr' ); -} - - -{ - my $time = time() + 3; - my %args = ( - siginception => $time, - sigexpiration => $time, - ); - my $object = Net::DNS::RR::RRSIG->create( \@rrset, $keyfile, %args ); - - ok( !$object->verify( \@rrset, $ksk ), 'verify fails for postdated RRSIG' ); - ok( $object->vrfyerrstr, 'observe rrsig->vrfyerrstr' ); - sleep 1 until $time < time(); - ok( !$object->verify( \@rrset, $ksk ), 'verify fails for expired RRSIG' ); - ok( $object->vrfyerrstr, 'observe rrsig->vrfyerrstr' ); -} - - -{ - my $object = Net::DNS::RR->new( type => 'RRSIG' ); - my $class = ref($object); - my $array = []; - my $dnskey = Net::DNS::RR->new( type => 'DNSKEY' ); - my $private = Net::DNS::SEC::Private->new($keyfile); - my $packet = Net::DNS::Packet->new(); - my $rr1 = Net::DNS::RR->new( name => 'example', type => 'A' ); - my $rr2 = Net::DNS::RR->new( name => 'differs', type => 'A' ); - my $rr3 = Net::DNS::RR->new( type => 'A', ttl => 1 ); - my $rr4 = Net::DNS::RR->new( type => 'A', ttl => 2 ); - my $rr5 = Net::DNS::RR->new( class => 'IN', type => 'A' ); - my $rr6 = Net::DNS::RR->new( class => 'ANY', type => 'A' ); - my $rr7 = Net::DNS::RR->new( type => 'A' ); - my $rr8 = Net::DNS::RR->new( type => 'AAAA' ); - my @testcase = ( ## test create() with invalid arguments - [$dnskey, $dnskey], - [$array, $private], - [[$rr1, $rr2], $private], - [[$rr3, $rr4], $private], - [[$rr5, $rr6], $private], - [[$rr7, $rr8], $private], - ); - - foreach my $arglist (@testcase) { - my @argtype = map { ref($_) } @$arglist; - eval { $class->create(@$arglist); }; - my ($exception) = split /\n/, "$@\n"; - ok( $exception, "create(@argtype)\t[$exception]" ); - } -} - - -{ - my $object = Net::DNS::RR->new( type => 'RRSIG' ); - my $packet = Net::DNS::Packet->new(); - my $dnskey = Net::DNS::RR->new( type => 'DNSKEY' ); - my $dsrec = Net::DNS::RR->new( type => 'DS' ); - my $scalar = 'SCALAR'; - my @testcase = ( ## test verify() with invalid arguments - [$packet, $dnskey], - [$dnskey, $dsrec], - [$dnskey, $scalar], - ); - - foreach my $arglist (@testcase) { - my @argtype = map { ref($_) || $_ } @$arglist; - eval { $object->verify(@$arglist); }; - my ($exception) = split /\n/, "$@\n"; - ok( $exception, "verify(@argtype)\t[$exception]" ); - } -} - - -{ - my $object = Net::DNS::RR->new( type => 'RRSIG', algorithm => 0 ); - - foreach my $method (qw(_CreateSig _VerifySig)) { - eval { $object->$method(); }; - my $errorstring = $object->vrfyerrstr() || $@; - my ($exception) = split /\n/, "$errorstring\n"; - ok( $exception, "$method()\t[$exception]" ); - } -} - - -exit; - -__END__ - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Net-DNS-1.28/t/NonFatal.pm new/Net-DNS-1.29/t/NonFatal.pm --- old/Net-DNS-1.28/t/NonFatal.pm 2020-10-23 16:40:50.000000000 +0200 +++ new/Net-DNS-1.29/t/NonFatal.pm 2020-11-18 14:18:24.000000000 +0100 @@ -1,4 +1,4 @@ -# $Id: NonFatal.pm 1818 2020-10-18 15:24:42Z willem $ -*-perl-*- +# $Id: NonFatal.pm 1823 2020-11-16 16:29:45Z willem $ -*-perl-*- # Test::More calls functions from Test::Builder. Those functions all eventually # call Test::Builder::ok (on a builder instance) for reporting the status. @@ -33,7 +33,7 @@ $self->SUPER::ok( 1, "NOT OK (tolerating failure) @name" ); - push @failed, scalar(@name) ? "@name" : 'undef'; + push @failed, join( "\t", $self->current_test, @name ); return $test; }