]> git.ipfire.org Git - thirdparty/pdns.git/blob - regression-tests/gsql_feed_ds.pl
Merge pull request #8380 from rgacogne/ddist-default-openssl
[thirdparty/pdns.git] / regression-tests / gsql_feed_ds.pl
1 #!/usr/bin/env perl
2
3 use strict;
4 use warnings;
5 use 5.005;
6
7 # usage: feed_ds.pl domain parent pdnsutil sqlcmd
8
9 my $domain = shift;
10 my $parent = shift;
11 my $pdnsutil = shift;
12 my $sqlcmd = shift;
13
14 die "Usage: $0 domain parent pdnsutil sqlcmd" unless($domain and $parent and $pdnsutil and $sqlcmd);
15
16 open IN, "-|", "$pdnsutil show-zone -v $domain 2>&1";
17
18 my $recs = [];
19
20 while(<IN>) {
21 chomp;
22 if (/DS = (.*) IN DS (.*) ;/) {
23 # we have data
24
25 push @$recs, [ $1, $2 ]
26 }
27 }
28
29 for my $rec (@$recs) {
30 my ($name,$value) = @$rec;
31 # fix name
32 $name=~s/[.]$//;
33 my $sql = qq(INSERT INTO records (domain_id, name, type, content, ttl, auth) SELECT id, '$name', 'DS', '$value', 120, 1 FROM domains WHERE name = '$parent');
34 # then feed data
35 qx($sqlcmd "$sql")
36 }