--- a/Build.PL Tue Apr 07 14:14:51 2015 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-#!perl
-use strict;
-use warnings;
-use Module::Build;
-
-Module::Build->new(
- dist_name => 'dnssec-info',
- dist_abstract => 'tool to get dnssec information',
- version_from => 'lib/DNSSec.pm',
- module_name => 'DNSSec',
- requires => {
- 'Net::DNS' => 0,
- 'Net::DNS::SEC' => 0,
- },
- test_requires => {
- 'Test::Exception' => 0,
- },
-)->create_build_script;
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/README Tue Sep 12 23:37:03 2017 +0200
@@ -0,0 +1,1 @@
+moved to git://git.schlittermann.de/users/heiko/dnssec-info
--- a/bin/dnssec-info Tue Apr 07 14:14:51 2015 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,105 +0,0 @@
-#!/usr/bin/perl
-
-use v5.14;
-use strict;
-use warnings;
-use Pod::Usage;
-use Getopt::Long;
-use DNSSec qw(keyinfo);
-use List::Util qw(max);
-use if $ENV{DEBUG} => 'Smart::Comments';
-
-sub pretty {
- my $hash = shift;
- my @fields = do {
- my @x;
- while (@_) {
- push @x, [shift, shift];
- }
- @x;
- };
- my $maxl = max map { length $_->[0] } @fields;
-
- my @pretty;
- foreach my $f (@fields) {
- my $sub = $f->[1];
- push @pretty, sprintf '%*s: %s',
- $maxl, $f->[0], $hash->$sub,
- }
- return @pretty;
-}
-
-sub main {
- my $domain;
- my $server;
- GetOptions(
- 's|server=s' => \$server,
- 'h|help' => sub { pod2usage(-exitval => 0) },
- 'm|man' => sub {
- pod2usage(
- -exitval => 0,
- -verbose => 2,
- -noperldoc => system('perldoc -V >/dev/null'),
- ),
- ;
- },
- ) and $domain = shift @ARGV // pod2usage;
- say $domain, "\n", '-' x length $domain;
-
- # get the dnskeys directory from the public available information
- my @ki = keyinfo {-server => $server }, $domain;
-# use Data::Dumper;
-# die Dumper \@ki;
-
- foreach my $ki (@ki) {
- say '** DNS Key';
- say "\t", join "\n\t", pretty $ki->{key},
- Algorithm => 'algorithm',
- Flags => 'flags',
- Protocol => 'protocol' ,
- Key => 'key',
- Keytag => 'keytag';
- say '** DNS Key Digest';
- say "\t", join "\n\t", pretty $ki->{digest},
- Algorithm => 'algorithm',
- Digest => 'digest',
- 'Digest Type' => 'digtype',
- Keytag => 'keytag',
- }
-
-}
-
-
-
-exit main @ARGV if not caller;
-
-__END__
-=head1 NAME
-
- dnssec-info - get various informations about a dnssec domain
-
-=head1 SYNOPSIS
-
- dnssec-info [-s|--server <server>] <domain>
-
-=head1 DESCRIPTION
-
-B<dnssec-info> retrieves varios information about a dnssec domain.
-
-=head1 OPTIONS
-
-=over
-
-=item B<-h>|B<--help>
-=item B<-m>|B<--man>
-
-Helpful information.
-
-=item B<-s>|B<--server> I<server>
-
-Send the query to a specific DNS server. (default: depend on your local settings)
-
-
-=back
-
-=cut
--- a/lib/DNSSec.pm Tue Apr 07 14:14:51 2015 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-package DNSSec;
-use v5.14;
-use strict;
-use warnings;
-use Net::DNS::SEC::Keyset;
-use base 'Exporter';
-
-our @EXPORT_OK = qw(keyset ksk keyinfo);
-
-
-sub keyset {
- my %arg = %{+shift} if ref $_[0] eq ref {};
- my $domain = shift;
-
- my $resolver = Net::DNS::Resolver->new(
- $arg{-server} ? (nameservers => [$arg{-server}]) : ());
- $resolver->dnssec(1);
-
- my $keys = $resolver->query($domain => (DNSKEY => 'IN'))
- or die $resolver->errorstring;
-
- my $ks = Net::DNS::SEC::Keyset->new($keys)
- or die $Net::DNS::SEC::Keyset::keyset_err;
- return $ks;
-}
-
-sub ksk {
- return grep { $_->flags & 0x1 } @_;
-}
-
-sub keyinfo {
- my $ks = keyset @_;
- my @keyinfo;
- foreach my $k (ksk $ks->keys) {
- my %keyinfo;
- $keyinfo{key} = $k;
- $keyinfo{digest} = Net::DNS::RR::DS->create($k, digtype => 'SHA-256');
- push @keyinfo, \%keyinfo;
- }
- return @keyinfo;
-}
-
-1;
--- a/t/01-dnssec.t Tue Apr 07 14:14:51 2015 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-#!/usr/bin/perl
-use strict;
-use warnings;
-use Test::More;
-use Test::Exception;
-use Data::Dumper;
-
-my @ZONES = qw(. schlittermann.info schlittermann.de);
-
-use_ok DNSSec => qw(keyset ksk keyinfo);
-
-# first the K.O. tests
-dies_ok { dnskeys('this.domain.does.not.exist.never.ever') } 'dies on non existent domain';
-
-subtest $_ => sub {
- # now the real ones
- my $keyset = keyset($_);
- cmp_ok scalar($keyset->keys), '>=', 2 => 'got some keys';
- my @ksk = ksk($keyset->keys);
- cmp_ok scalar(@ksk), '>=', 1 => 'got at least one KSK';
-} foreach (@ZONES);
-
-
-done_testing;