Blame t/43-DNSKEY-keylength.t

Packit Service f6e53a
# $Id: 43-DNSKEY-keylength.t 1367 2015-06-29 08:53:56Z willem $	-*-perl-*-
Packit Service f6e53a
#
Packit Service f6e53a
Packit Service f6e53a
use strict;
Packit Service f6e53a
use Test::More;
Packit Service f6e53a
use Net::DNS;
Packit Service f6e53a
Packit Service f6e53a
my @prerequisite = qw(
Packit Service f6e53a
		MIME::Base64
Packit Service f6e53a
		Net::DNS::RR::DNSKEY;
Packit Service f6e53a
		);
Packit Service f6e53a
Packit Service f6e53a
foreach my $package (@prerequisite) {
Packit Service f6e53a
	next if eval "require $package";
Packit Service f6e53a
	plan skip_all => "$package not installed";
Packit Service f6e53a
	exit;
Packit Service f6e53a
}
Packit Service f6e53a
Packit Service f6e53a
plan tests => 9;
Packit Service f6e53a
Packit Service f6e53a
Packit Service f6e53a
my $rsa = new Net::DNS::RR <<'END';
Packit Service f6e53a
RSASHA1.example.	IN	DNSKEY	256 3 5 (
Packit Service f6e53a
	AwEAAZHbngk6sMoFHN8fsYY6bmGR4B9UYJIqDp+mORLEH53Xg0f6RMDtfx+H3/x7bHTUikTr26bV
Packit Service f6e53a
	AqsxOs2KxyJ2Xx9RGG0DB9O4gpANljtTq2tLjvaQknhJpSq9vj4CqUtr6Wu152J2aQYITBoQLHDV
Packit Service f6e53a
	i8mIIunparIKDmhy8TclVXg9 ; Key ID = 1623
Packit Service f6e53a
	)
Packit Service f6e53a
END
Packit Service f6e53a
Packit Service f6e53a
ok( $rsa, 'set up RSA public key' );
Packit Service f6e53a
Packit Service f6e53a
is( $rsa->keylength, 1024, 'RSA keylength has expected value' );
Packit Service f6e53a
Packit Service f6e53a
my $longformat = pack 'xn a*', unpack 'C a*', $rsa->keybin;
Packit Service f6e53a
$rsa->keybin($longformat);
Packit Service f6e53a
is( $rsa->keylength, 1024, 'keylength for long format RSA key' );
Packit Service f6e53a
Packit Service f6e53a
Packit Service f6e53a
my $dsa = new Net::DNS::RR <<'END';
Packit Service f6e53a
DSA.example.	IN	DNSKEY	256 3 3 (
Packit Service f6e53a
	CMKzsCaT2Jy1w/sPdpigEE+nbeJ/x5C6cruWvStVum6/YulcR7MHeujx9c2iBDbo3kW4X8/l+qgk
Packit Service f6e53a
	7ZEZ+yV5lphWtJMmMtOHIU+YdAhgLpt84NKhcupWL8wfuBW/97cqIv5Z+51fwn0YEAcZsoCrE0nL
Packit Service f6e53a
	5+31VfkK9LTNuVo38hsbWa3eWZFalID5NesF6sJRgXZoAyeAH46EQVCq1UBnnaHslvSDkdb+Z1kT
Packit Service f6e53a
	bMQ64ZVI/sBRXRbqIcDlXVZurCTDV7JL9KZwwfeyrQcnVyYh5mdHPsXbpX5NQJvoqPgvRZWBpP4h
Packit Service f6e53a
	pjkAm9UrUbow9maPCQ1JQ3JuiU5buh9cjAI+QIyGMujKLT2OsogSZD2IFUciaZBL/rSe0gmAUv0q
Packit Service f6e53a
	XrczmIYFUCoRGZ6+lKVqQQ6f2U7Gsr6zRbeJN+JCVD6BJ52zjLUaWUPHbakhZb/wMO7roX/tnA/w
Packit Service f6e53a
	zoDYBIIF7yuRYWblgPXBJTK2Bp07xre8lKCRbzY4J/VXZFziZgHgcn9tkHnrfov04UG9zlWEdT6X
Packit Service f6e53a
	E/60HjrP ; Key ID = 53244
Packit Service f6e53a
	)
Packit Service f6e53a
END
Packit Service f6e53a
Packit Service f6e53a
ok( $dsa, 'set up DSA public key' );
Packit Service f6e53a
Packit Service f6e53a
is( $dsa->keylength, 1024, 'DSA keylength has expected value' );
Packit Service f6e53a
Packit Service f6e53a
Packit Service f6e53a
my $eccgost = new Net::DNS::RR <<'END';
Packit Service f6e53a
ECC-GOST.example.	IN	DNSKEY	256 3 12 (
Packit Service f6e53a
	6VwgNT1BXxXNVpTQXcJQ82PcsCYmI60oN88Plbl028ruvl6DqJby/uBGULHT5FXmZiXBJozE6kP0
Packit Service f6e53a
	+BirN9YPBQ== ; Key ID = 46387
Packit Service f6e53a
	)
Packit Service f6e53a
END
Packit Service f6e53a
Packit Service f6e53a
ok( $eccgost, 'set up ECC-GOST public key' );
Packit Service f6e53a
Packit Service f6e53a
is( $eccgost->keylength, 256, 'ECC-GOST keylength has expected value' );
Packit Service f6e53a
Packit Service f6e53a
Packit Service f6e53a
my $ecdsa = new Net::DNS::RR <<'END';
Packit Service f6e53a
ECDSAP256SHA256.example.	IN	DNSKEY	256 3 13 (
Packit Service f6e53a
	7Y4BZY1g9uzBwt3OZexWk7iWfkiOt0PZ5o7EMip0KBNxlBD+Z58uWutYZIMolsW8v/3rfgac45lO
Packit Service f6e53a
	IikBZK4KZg== ; Key ID = 44222
Packit Service f6e53a
	)
Packit Service f6e53a
END
Packit Service f6e53a
Packit Service f6e53a
ok( $ecdsa, 'set up ECDSA public key' );
Packit Service f6e53a
Packit Service f6e53a
is( $ecdsa->keylength, 256, 'ECDSA keylength has expected value' );
Packit Service f6e53a
Packit Service f6e53a
Packit Service f6e53a
exit;
Packit Service f6e53a
Packit Service f6e53a
__END__
Packit Service f6e53a
Packit Service f6e53a