1#!/bin/sh -e
2
3# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
4#
5# SPDX-License-Identifier: MPL-2.0
6#
7# This Source Code Form is subject to the terms of the Mozilla Public
8# License, v. 2.0.  If a copy of the MPL was not distributed with this
9# file, you can obtain one at https://mozilla.org/MPL/2.0/.
10#
11# See the COPYRIGHT file distributed with this work for additional
12# information regarding copyright ownership.
13
14oldid=$(echo ${1:-0} | sed 's/^0*//')
15newid=$(printf '%05u' $(((oldid + 1000) % 65536)))
16badid=$(printf '%05u' $(((oldid + 7777) % 65536)))
17oldid=$(printf '%05u' $((oldid + 0)))
18
19. ../../conf.sh
20
21zone=example.
22infile=example.db.in
23zonefile=example.db
24
25keyname1=$($KEYGEN -q -a $DEFAULT_ALGORITHM -b $DEFAULT_BITS -n zone $zone)
26keyname2=$($KEYGEN -q -a $DEFAULT_ALGORITHM -b $DEFAULT_BITS -n zone $zone)
27
28cat $infile $keyname1.key $keyname2.key >$zonefile
29echo root-key-sentinel-is-ta-$oldid A 10.53.0.1 >>$zonefile
30echo root-key-sentinel-not-ta-$oldid A 10.53.0.2 >>$zonefile
31echo root-key-sentinel-is-ta-$newid A 10.53.0.3 >>$zonefile
32echo root-key-sentinel-not-ta-$newid A 10.53.0.4 >>$zonefile
33echo old-is-ta CNAME root-key-sentinel-is-ta-$oldid >>$zonefile
34echo old-not-ta CNAME root-key-sentinel-not-ta-$oldid >>$zonefile
35echo new-is-ta CNAME root-key-sentinel-is-ta-$newid >>$zonefile
36echo new-not-ta CNAME root-key-sentinel-not-ta-$newid >>$zonefile
37echo bad-is-ta CNAME root-key-sentinel-is-ta-$badid >>$zonefile
38echo bad-not-ta CNAME root-key-sentinel-not-ta-$badid >>$zonefile
39
40$SIGNER -P -g -o $zone -k $keyname1 $zonefile $keyname2 >/dev/null
41