1#!/bin/sh -e
2#
3# Copyright (C) 2009-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=.
21zonefile=root.db
22infile=root.db.in
23
24(cd ../ns2 && $SHELL keygen.sh )
25
26cat $infile ../ns2/dsset-example. > $zonefile
27
28zskact=`$KEYGEN -3 -q -r $RANDFILE $zone`
29zskvanish=`$KEYGEN -3 -q -r $RANDFILE $zone`
30zskdel=`$KEYGEN -3 -q -r $RANDFILE -D now $zone`
31zskinact=`$KEYGEN -3 -q -r $RANDFILE -I now $zone`
32zskunpub=`$KEYGEN -3 -q -r $RANDFILE -G $zone`
33zsksby=`$KEYGEN -3 -q -r $RANDFILE -A none $zone`
34zskactnowpub1d=`$KEYGEN -3 -q -r $RANDFILE -A now -P +1d $zone`
35zsknopriv=`$KEYGEN -3 -q -r $RANDFILE $zone`
36rm $zsknopriv.private
37
38ksksby=`$KEYGEN -3 -q -r $RANDFILE -P now -A now+15s -fk $zone`
39kskrev=`$KEYGEN -3 -q -r $RANDFILE -R now+15s -fk $zone`
40
41cat $ksksby.key | grep -v '^; ' | $PERL -n -e '
42local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
43local $key = join("", @rest);
44print <<EOF
45trusted-keys {
46    "$dn" $flags $proto $alg "$key";
47};
48EOF
49' > trusted.conf
50cp trusted.conf ../ns2/trusted.conf
51cp trusted.conf ../ns3/trusted.conf
52cp trusted.conf ../ns4/trusted.conf
53
54cat $kskrev.key | grep -v '^; ' | $PERL -n -e '
55local ($dn, $class, $type, $flags, $proto, $alg, @rest) = split;
56local $key = join("", @rest);
57print <<EOF
58trusted-keys {
59    "$dn" $flags $proto $alg "$key";
60};
61EOF
62' > trusted.conf
63cp trusted.conf ../ns5/trusted.conf
64
65echo $zskact > ../active.key
66echo $zskvanish > ../vanishing.key
67echo $zskdel > ../del.key
68echo $zskinact > ../inact.key
69echo $zskunpub > ../unpub.key
70echo $zsknopriv > ../nopriv.key
71echo $zsksby > ../standby.key
72echo $zskactnowpub1d > ../activate-now-publish-1day.key
73$REVOKE -R $kskrev > ../rev.key
74