1#!/bin/sh -e
2#
3# Copyright (C) 2011, 2012, 2014  Internet Systems Consortium, Inc. ("ISC")
4#
5# Permission to use, copy, modify, and/or distribute this software for any
6# purpose with or without fee is hereby granted, provided that the above
7# copyright notice and this permission notice appear in all copies.
8#
9# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15# PERFORMANCE OF THIS SOFTWARE.
16
17SYSTEMTESTTOP=../..
18. $SYSTEMTESTTOP/conf.sh
19
20zone=dlv.isc.org
21infile=dlv.isc.org.db.in
22zonefile=dlv.isc.org.db
23
24dlvkey=`$KEYGEN -q -r $RANDFILE -a RSAMD5 -b 768 -n zone $zone`
25cat $infile $dlvkey.key > $zonefile
26$SIGNER -P -g -r $RANDFILE -o $zone $zonefile > /dev/null
27
28zone=.
29infile=root.db.in
30zonefile=root.db
31
32rootkey=`$KEYGEN -q -r $RANDFILE -a RSAMD5 -b 768 -n zone $zone`
33cat $infile $rootkey.key > $zonefile
34$SIGNER -P -g -r $RANDFILE -o $zone $zonefile > /dev/null
35
36# Create bind.keys file for the use of the resolving server
37echo "managed-keys {" > bind.keys
38cat $dlvkey.key | grep -v '^; ' | $PERL -n -e '
39local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
40local $key = join("", @rest);
41print <<EOF
42    "$dn" initial-key $flags $proto $alg "$key";
43EOF
44' >>  bind.keys
45cat $rootkey.key | grep -v '^; ' | $PERL -n -e '
46local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
47local $key = join("", @rest);
48print <<EOF
49    "$dn" initial-key $flags $proto $alg "$key";
50EOF
51' >>  bind.keys
52echo "};" >> bind.keys
53