]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Add dyndns test oracles for lmdb.
authorMiod Vallat <miod.vallat@powerdns.com>
Wed, 2 Jul 2025 20:29:09 +0000 (22:29 +0200)
committerMiod Vallat <miod.vallat@powerdns.com>
Fri, 11 Jul 2025 09:43:53 +0000 (11:43 +0200)
Unfortunately, due to the crude adaptation of mysqldiff, we do not
gather all the interesting data and can not check subtle details,
especially NSEC3 chaining details.

Also, a few tests are currently disabled because the way LMDB builds
NSEC3 chains is still not 100% correct.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
84 files changed:
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3 [new symlink]
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-narrow [new symlink]
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-optout [new symlink]
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3 [new symlink]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-narrow [new symlink]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-optout [new symlink]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3 [new symlink]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-narrow [new symlink]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-optout [new symlink]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3 [new symlink]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-narrow [new symlink]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-optout [new symlink]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3 [new symlink]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-narrow [new symlink]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-optout [new symlink]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nodnssec [new file with mode: 0644]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nodnssec-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3 [new file with mode: 0644]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-narrow [new file with mode: 0644]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-optout [new file with mode: 0644]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3 [new symlink]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-narrow [new symlink]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-optout [new symlink]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3 [new symlink]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-narrow [new symlink]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-optout [new symlink]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-variant [new symlink]
regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb [new file with mode: 0644]
regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3 [new file with mode: 0644]
regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-optout [new file with mode: 0644]
regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nodnssec-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.variant [new file with mode: 0644]
regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nodnssec-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-narrow-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-optout-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-variant [new symlink]
regression-tests/tests/pdnsutil-increase-serial/expected_result.variant [new file with mode: 0644]

diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb
new file mode 100644 (file)
index 0000000..7dc1a32
--- /dev/null
@@ -0,0 +1,120 @@
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+check if things are added
+--- Start: diff start step.1 ---
+> big-txt.test.dyndns  600     IN      TXT     "1 bottles of beer on the wall, 1 bottles of beer. Take one down, pass it around, No more beer on the wall :-("
+> big-txt.test.dyndns  600     IN      TXT     "2 bottles of beer on the wall, 2 bottles of beer. Take one down, pass it around, 1 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "3 bottles of beer on the wall, 3 bottles of beer. Take one down, pass it around, 2 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "4 bottles of beer on the wall, 4 bottles of beer. Take one down, pass it around, 3 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "5 bottles of beer on the wall, 5 bottles of beer. Take one down, pass it around, 4 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "6 bottles of beer on the wall, 6 bottles of beer. Take one down, pass it around, 5 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "7 bottles of beer on the wall, 7 bottles of beer. Take one down, pass it around, 6 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "8 bottles of beer on the wall, 8 bottles of beer. Take one down, pass it around, 7 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "9 bottles of beer on the wall, 9 bottles of beer. Take one down, pass it around, 8 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "10 bottles of beer on the wall, 10 bottles of beer. Take one down, pass it around, 9 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "11 bottles of beer on the wall, 11 bottles of beer. Take one down, pass it around, 10 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "12 bottles of beer on the wall, 12 bottles of beer. Take one down, pass it around, 11 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "13 bottles of beer on the wall, 13 bottles of beer. Take one down, pass it around, 12 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "14 bottles of beer on the wall, 14 bottles of beer. Take one down, pass it around, 13 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "15 bottles of beer on the wall, 15 bottles of beer. Take one down, pass it around, 14 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "16 bottles of beer on the wall, 16 bottles of beer. Take one down, pass it around, 15 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "17 bottles of beer on the wall, 17 bottles of beer. Take one down, pass it around, 16 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "18 bottles of beer on the wall, 18 bottles of beer. Take one down, pass it around, 17 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "19 bottles of beer on the wall, 19 bottles of beer. Take one down, pass it around, 18 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "20 bottles of beer on the wall, 20 bottles of beer. Take one down, pass it around, 19 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "21 bottles of beer on the wall, 21 bottles of beer. Take one down, pass it around, 20 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "22 bottles of beer on the wall, 22 bottles of beer. Take one down, pass it around, 21 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "23 bottles of beer on the wall, 23 bottles of beer. Take one down, pass it around, 22 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "24 bottles of beer on the wall, 24 bottles of beer. Take one down, pass it around, 23 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "25 bottles of beer on the wall, 25 bottles of beer. Take one down, pass it around, 24 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "26 bottles of beer on the wall, 26 bottles of beer. Take one down, pass it around, 25 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "27 bottles of beer on the wall, 27 bottles of beer. Take one down, pass it around, 26 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "28 bottles of beer on the wall, 28 bottles of beer. Take one down, pass it around, 27 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "29 bottles of beer on the wall, 29 bottles of beer. Take one down, pass it around, 28 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "30 bottles of beer on the wall, 30 bottles of beer. Take one down, pass it around, 29 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "31 bottles of beer on the wall, 31 bottles of beer. Take one down, pass it around, 30 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "32 bottles of beer on the wall, 32 bottles of beer. Take one down, pass it around, 31 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "33 bottles of beer on the wall, 33 bottles of beer. Take one down, pass it around, 32 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "34 bottles of beer on the wall, 34 bottles of beer. Take one down, pass it around, 33 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "35 bottles of beer on the wall, 35 bottles of beer. Take one down, pass it around, 34 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "36 bottles of beer on the wall, 36 bottles of beer. Take one down, pass it around, 35 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "37 bottles of beer on the wall, 37 bottles of beer. Take one down, pass it around, 36 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "38 bottles of beer on the wall, 38 bottles of beer. Take one down, pass it around, 37 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "39 bottles of beer on the wall, 39 bottles of beer. Take one down, pass it around, 38 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "40 bottles of beer on the wall, 40 bottles of beer. Take one down, pass it around, 39 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "41 bottles of beer on the wall, 41 bottles of beer. Take one down, pass it around, 40 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "42 bottles of beer on the wall, 42 bottles of beer. Take one down, pass it around, 41 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "43 bottles of beer on the wall, 43 bottles of beer. Take one down, pass it around, 42 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "44 bottles of beer on the wall, 44 bottles of beer. Take one down, pass it around, 43 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "45 bottles of beer on the wall, 45 bottles of beer. Take one down, pass it around, 44 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "46 bottles of beer on the wall, 46 bottles of beer. Take one down, pass it around, 45 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "47 bottles of beer on the wall, 47 bottles of beer. Take one down, pass it around, 46 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "48 bottles of beer on the wall, 48 bottles of beer. Take one down, pass it around, 47 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "49 bottles of beer on the wall, 49 bottles of beer. Take one down, pass it around, 48 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "50 bottles of beer on the wall, 50 bottles of beer. Take one down, pass it around, 49 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "51 bottles of beer on the wall, 51 bottles of beer. Take one down, pass it around, 50 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "52 bottles of beer on the wall, 52 bottles of beer. Take one down, pass it around, 51 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "53 bottles of beer on the wall, 53 bottles of beer. Take one down, pass it around, 52 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "54 bottles of beer on the wall, 54 bottles of beer. Take one down, pass it around, 53 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "55 bottles of beer on the wall, 55 bottles of beer. Take one down, pass it around, 54 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "56 bottles of beer on the wall, 56 bottles of beer. Take one down, pass it around, 55 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "57 bottles of beer on the wall, 57 bottles of beer. Take one down, pass it around, 56 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "58 bottles of beer on the wall, 58 bottles of beer. Take one down, pass it around, 57 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "59 bottles of beer on the wall, 59 bottles of beer. Take one down, pass it around, 58 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "60 bottles of beer on the wall, 60 bottles of beer. Take one down, pass it around, 59 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "61 bottles of beer on the wall, 61 bottles of beer. Take one down, pass it around, 60 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "62 bottles of beer on the wall, 62 bottles of beer. Take one down, pass it around, 61 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "63 bottles of beer on the wall, 63 bottles of beer. Take one down, pass it around, 62 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "64 bottles of beer on the wall, 64 bottles of beer. Take one down, pass it around, 63 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "65 bottles of beer on the wall, 65 bottles of beer. Take one down, pass it around, 64 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "66 bottles of beer on the wall, 66 bottles of beer. Take one down, pass it around, 65 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "67 bottles of beer on the wall, 67 bottles of beer. Take one down, pass it around, 66 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "68 bottles of beer on the wall, 68 bottles of beer. Take one down, pass it around, 67 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "69 bottles of beer on the wall, 69 bottles of beer. Take one down, pass it around, 68 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "70 bottles of beer on the wall, 70 bottles of beer. Take one down, pass it around, 69 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "71 bottles of beer on the wall, 71 bottles of beer. Take one down, pass it around, 70 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "72 bottles of beer on the wall, 72 bottles of beer. Take one down, pass it around, 71 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "73 bottles of beer on the wall, 73 bottles of beer. Take one down, pass it around, 72 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "74 bottles of beer on the wall, 74 bottles of beer. Take one down, pass it around, 73 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "75 bottles of beer on the wall, 75 bottles of beer. Take one down, pass it around, 74 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "76 bottles of beer on the wall, 76 bottles of beer. Take one down, pass it around, 75 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "77 bottles of beer on the wall, 77 bottles of beer. Take one down, pass it around, 76 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "78 bottles of beer on the wall, 78 bottles of beer. Take one down, pass it around, 77 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "79 bottles of beer on the wall, 79 bottles of beer. Take one down, pass it around, 78 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "80 bottles of beer on the wall, 80 bottles of beer. Take one down, pass it around, 79 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "81 bottles of beer on the wall, 81 bottles of beer. Take one down, pass it around, 80 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "82 bottles of beer on the wall, 82 bottles of beer. Take one down, pass it around, 81 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "83 bottles of beer on the wall, 83 bottles of beer. Take one down, pass it around, 82 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "84 bottles of beer on the wall, 84 bottles of beer. Take one down, pass it around, 83 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "85 bottles of beer on the wall, 85 bottles of beer. Take one down, pass it around, 84 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "86 bottles of beer on the wall, 86 bottles of beer. Take one down, pass it around, 85 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "87 bottles of beer on the wall, 87 bottles of beer. Take one down, pass it around, 86 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "88 bottles of beer on the wall, 88 bottles of beer. Take one down, pass it around, 87 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "89 bottles of beer on the wall, 89 bottles of beer. Take one down, pass it around, 88 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "90 bottles of beer on the wall, 90 bottles of beer. Take one down, pass it around, 89 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "91 bottles of beer on the wall, 91 bottles of beer. Take one down, pass it around, 90 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "92 bottles of beer on the wall, 92 bottles of beer. Take one down, pass it around, 91 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "93 bottles of beer on the wall, 93 bottles of beer. Take one down, pass it around, 92 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "94 bottles of beer on the wall, 94 bottles of beer. Take one down, pass it around, 93 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "95 bottles of beer on the wall, 95 bottles of beer. Take one down, pass it around, 94 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "96 bottles of beer on the wall, 96 bottles of beer. Take one down, pass it around, 95 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "97 bottles of beer on the wall, 97 bottles of beer. Take one down, pass it around, 96 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "98 bottles of beer on the wall, 98 bottles of beer. Take one down, pass it around, 97 bottles of beer on the wall."
+> big-txt.test.dyndns  600     IN      TXT     "99 bottles of beer on the wall, 99 bottles of beer. Take one down, pass it around, 98 bottles of beer on the wall."
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+check if we deleted properly
+--- Start: diff start step.2 ---
+no difference
+--- End: diff start step.2 ---
+
diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-narrow
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-optout
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..aa26cfb
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb-nsec3
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-big-packet/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb
new file mode 100644 (file)
index 0000000..24e8fd8
--- /dev/null
@@ -0,0 +1,48 @@
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check delegate and DS added correctly
+--- Start: diff start step.1 ---
+> del.test.dyndns      3600    IN      DS      39274 8 2 8e8a8cfb40fd0c30bfa82e53752e1c257dafb7b6206d12b9eda43af3eab2157d
+> del.test.dyndns      3600    IN      NS      ns1.del.test.dyndns.
+> ns1.del.test.dyndns  3600    IN      A       127.0.0.1
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if record is gone
+--- Start: diff start step.2 ---
+no difference
+--- End: diff start step.2 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check delegate and DS added correctly again (other way around)
+--- Start: diff start step.3 ---
+> del.test.dyndns      3600    IN      DS      39274 8 2 8e8a8cfb40fd0c30bfa82e53752e1c257dafb7b6206d12b9eda43af3eab2157d
+> del.test.dyndns      3600    IN      NS      ns1.del.test.dyndns.
+> ns1.del.test.dyndns  3600    IN      A       127.0.0.1
+--- End: diff start step.3 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if record is gone again
+--- Start: diff start step.4 ---
+no difference
+--- End: diff start step.4 ---
+
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-narrow
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-optout
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-add-delete-ds/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb
new file mode 100644 (file)
index 0000000..153697e
--- /dev/null
@@ -0,0 +1,22 @@
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if add-delete.test.dyndns. 3600 A 127.0.0.108 exists
+--- Start: diff start step.1 ---
+> add-delete.test.dyndns       3600    IN      A       127.0.0.108
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if record is gone
+--- Start: diff step.1 step.2 ---
+< add-delete.test.dyndns       3600    IN      A       127.0.0.108
+--- End: diff step.1 step.2 ---
+
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-narrow
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-optout
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-add-delete/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb
new file mode 100644 (file)
index 0000000..21ffada
--- /dev/null
@@ -0,0 +1,34 @@
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if records are added
+--- Start: diff start step.1 ---
+> a.b.c.d.e.f.test.dyndns      3600    IN      A       127.0.0.1
+> a.b.d.e.f.test.dyndns        3600    IN      A       127.0.0.1
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if a.b.c.d.e.f is removed correctly
+--- Start: diff start step.2 ---
+> a.b.d.e.f.test.dyndns        3600    IN      A       127.0.0.1
+--- End: diff start step.2 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if everything is removed correctly
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-narrow
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-optout
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-deep-add-delete/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb
new file mode 100644 (file)
index 0000000..629998c
--- /dev/null
@@ -0,0 +1,25 @@
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check delegates added
+--- Start: diff start step.1 ---
+> delegate.test.dyndns 3600    IN      NS      ns1.delegate.test.dyndns.
+> ns1.delegate.test.dyndns     3600    IN      A       127.0.0.1
+> ns1.other.very.deep.delegate.test.dyndns     3600    IN      A       127.0.0.1
+> other.very.deep.delegate.test.dyndns 3600    IN      NS      ns1.other.very.deep.delegate.test.dyndns.
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check delegates deleted
+--- Start: diff start step.2 ---
+no difference
+--- End: diff start step.2 ---
+
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-narrow
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-optout
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-deep-delegate/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb
new file mode 100644 (file)
index 0000000..7269565
--- /dev/null
@@ -0,0 +1,390 @@
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate and glue are added correctly.
+--- Start: diff start step.1 ---
+> c.host.test.dyndns   3600    IN      NS      ns1.c.host.test.dyndns.
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.1 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      NSEC    c.host.test.dyndns. A RRSIG NSEC
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      c.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. NS RRSIG NSEC
+1      c.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. NS RRSIG NSEC
+1      c.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      c.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. NS RRSIG NSEC
+1      c.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. NS RRSIG NSEC
+1      c.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate is deleted and glue auth=1
+--- Start: diff start step.2 ---
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.2 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      NSEC    ns1.c.host.test.dyndns. A RRSIG NSEC
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    ns1.c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    ns1.c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      ns1.c.host.test.dyndns. 3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      ns1.c.host.test.dyndns. 3600    IN      RRSIG   NSEC 13 5 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    ns1.c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    ns1.c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    ns1.c.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      ns1.c.host.test.dyndns. 3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      ns1.c.host.test.dyndns. 3600    IN      RRSIG   NSEC 13 5 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if we are back to normal
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+0      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      e.host.test.dyndns.     3600    IN      NSEC    host-1.test.dyndns. A RRSIG NSEC
+1      e.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nodnssec b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nodnssec
new file mode 100644 (file)
index 0000000..1f055f3
--- /dev/null
@@ -0,0 +1,212 @@
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate and glue are added correctly.
+--- Start: diff start step.1 ---
+> c.host.test.dyndns   3600    IN      NS      ns1.c.host.test.dyndns.
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.1 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate is deleted and glue auth=1
+--- Start: diff start step.2 ---
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.2 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if we are back to normal
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nodnssec-variant b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nodnssec-variant
new file mode 120000 (symlink)
index 0000000..a70496a
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb-nodnssec
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3
new file mode 100644 (file)
index 0000000..4c19719
--- /dev/null
@@ -0,0 +1,426 @@
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate and glue are added correctly.
+--- Start: diff start step.1 ---
+> c.host.test.dyndns   3600    IN      NS      ns1.c.host.test.dyndns.
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.1 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P NS
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MI A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P NS
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate is deleted and glue auth=1
+--- Start: diff start step.2 ---
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.2 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MI A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      ncja3un028k84h59aoloj6bh06s80071.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd Q75PNOE7PB74PND6OGN44T5BTUURBHRF NS
+1      ncja3un028k84h59aoloj6bh06s80071.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      r9s1cj8dkmnmenjn95sti8nhh9utpq9k.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd S30OPRHQREKH5SUH6L530KD668ELK9OS
+1      r9s1cj8dkmnmenjn95sti8nhh9utpq9k.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if we are back to normal
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-narrow
new file mode 100644 (file)
index 0000000..6f7f7cb
--- /dev/null
@@ -0,0 +1,458 @@
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TL50O2E6J8AJ79R56OLQQ5H6R0H7HVLT
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 9ESKCI2JT1GR4EB97DR5MG4A1NNJN5HL
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR7 A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd ECLK033HJV6D7GBOLF2UAMVD7A9HJULJ
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8TI9TGH8D81FRR5VR4O1O5BVKO42V9DR A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd BQ8UL1D9PIR8BM0BQ7T9OV5CKK8GHKHF
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd UEL5OHQCMEFOO28JDMRCMQ1UGMLO0POE
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate and glue are added correctly.
+--- Start: diff start step.1 ---
+> c.host.test.dyndns   3600    IN      NS      ns1.c.host.test.dyndns.
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.1 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ NS
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TL50O2E6J8AJ79R56OLQQ5H6R0H7HVLT
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 9ESKCI2JT1GR4EB97DR5MG4A1NNJN5HL
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR7 A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd ECLK033HJV6D7GBOLF2UAMVD7A9HJULJ
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ NS
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8TI9TGH8D81FRR5VR4O1O5BVKO42V9DR A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd BQ8UL1D9PIR8BM0BQ7T9OV5CKK8GHKHF
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd UEL5OHQCMEFOO28JDMRCMQ1UGMLO0POE
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate is deleted and glue auth=1
+--- Start: diff start step.2 ---
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.2 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TL50O2E6J8AJ79R56OLQQ5H6R0H7HVLT
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 9ESKCI2JT1GR4EB97DR5MG4A1NNJN5HL
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR7 A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd ECLK033HJV6D7GBOLF2UAMVD7A9HJULJ
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      pjn3mi4alcs21beld7nveruudmhh8t4l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd PJN3MI4ALCS21BELD7NVERUUDMHH8T4N
+1      pjn3mi4alcs21beld7nveruudmhh8t4l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      rnplq1876o9vq8qr599rlr4ism2beht4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd RNPLQ1876O9VQ8QR599RLR4ISM2BEHT6
+1      rnplq1876o9vq8qr599rlr4ism2beht4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8TI9TGH8D81FRR5VR4O1O5BVKO42V9DR A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd BQ8UL1D9PIR8BM0BQ7T9OV5CKK8GHKHF
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd UEL5OHQCMEFOO28JDMRCMQ1UGMLO0POE
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if we are back to normal
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TL50O2E6J8AJ79R56OLQQ5H6R0H7HVLT
+1      tl50o2e6j8aj79r56olqq5h6r0h7hvlr.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 9ESKCI2JT1GR4EB97DR5MG4A1NNJN5HL
+1      9eskci2jt1gr4eb97dr5mg4a1nnjn5hj.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR7 A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd ECLK033HJV6D7GBOLF2UAMVD7A9HJULJ
+1      eclk033hjv6d7gbolf2uamvd7a9hjulh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8V0C5RPU3BNVS3KLJ997NS1CMB4ID023
+1      8v0c5rpu3bnvs3klj997ns1cmb4id021.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MJ
+1      fgun0ru4oe3g76tr551hg97mpu37b6mh.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 4LU40MIOAPF67TRU8ES6U204HIFN8P3N
+1      4lu40mioapf67tru8es6u204hifn8p3l.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6F4A5UATP57LKHGBUSC1KCFC51T5DI0D
+1      6f4a5uatp57lkhgbusc1kcfc51t5di0b.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LMRSADK2BB62QPRUAULES5I5AP06CP56
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8TI9TGH8D81FRR5VR4O1O5BVKO42V9DR A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd BQ8UL1D9PIR8BM0BQ7T9OV5CKK8GHKHF
+1      bq8ul1d9pir8bm0bq7t9ov5ckk8ghkhd.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd UEL5OHQCMEFOO28JDMRCMQ1UGMLO0POE
+1      uel5ohqcmefoo28jdmrcmq1ugmlo0poc.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..ee4434e
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb-nsec3-narrow
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-optout
new file mode 100644 (file)
index 0000000..c87d551
--- /dev/null
@@ -0,0 +1,430 @@
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate and glue are added correctly.
+--- Start: diff start step.1 ---
+> c.host.test.dyndns   3600    IN      NS      ns1.c.host.test.dyndns.
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.1 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      c.host.test.dyndns.     3600    IN      NS      ns1.c.host.test.dyndns.
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+2      ns1.c.host.test.dyndns. 3600    IN      A       192.168.0.1
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegate is deleted and glue auth=1
+--- Start: diff start step.2 ---
+> ns1.c.host.test.dyndns       3600    IN      A       192.168.0.1
+--- End: diff start step.2 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FGUN0RU4OE3G76TR551HG97MPU37B6MI A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P
+1      fgun0ru4oe3g76tr551hg97mpu37b6mi.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lresbbp3lv8blgj9fsgtdmm4q7vj3d6j.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd Q75PNOE7PB74PND6OGN44T5BTUURBHRF A RRSIG
+1      lresbbp3lv8blgj9fsgtdmm4q7vj3d6j.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      r9s1cj8dkmnmenjn95sti8nhh9utpq9k.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd S30OPRHQREKH5SUH6L530KD668ELK9OS
+1      r9s1cj8dkmnmenjn95sti8nhh9utpq9k.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 6OVOD1M5KOSSAIIQPRLAF42PRQRKEAQ7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if we are back to normal
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
+0      a.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      a.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.host.test.dyndns.', qtype=ANY
+0      e.host.test.dyndns.     3600    IN      A       1.1.1.1
+0      e.host.test.dyndns.     3600    IN      RRSIG   A 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd TNTCBDFSIHHD24NT96BQ9973VD019U43 A RRSIG
+1      tdhv9cbk13jg8drivldhsl3mji8qqqe2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='f.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='a.a.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.b.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd FQU365VN7BR5CSV8CG6NE9V8HA6D008P A RRSIG
+1      dsa3ti9nu3apdsvl3f63qlvakv555sr6.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='c.c.host.test.dyndns.', qtype=ANY
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='d.d.host.test.dyndns.', qtype=ANY
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 2GP5RDNJOQ5OOSPC5O1IH9LALI101DI8 NS SOA MX RRSIG DNSKEY NSEC3PARAM
+1      u36f0tjooqv1kspatto6qns0vap731v2.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='e.e.host.test.dyndns.', qtype=ANY
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..0ca2f4e
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb-nsec3-optout
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..aa26cfb
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb-nsec3
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-delegate-in-between/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb
new file mode 100644 (file)
index 0000000..70a29a6
--- /dev/null
@@ -0,0 +1,57 @@
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check delegate1 added correctly
+--- Start: diff start step.1 ---
+> delegate1.test.dyndns        3600    IN      NS      ns1.delegate1.test.dyndns.
+> delegate1.test.dyndns        3600    IN      NS      ns2.delegate1.test.dyndns.
+> ns1.delegate1.test.dyndns    3600    IN      A       127.0.0.1
+> ns2.delegate1.test.dyndns    3600    IN      A       127.0.0.1
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check delegate2 added correctly
+--- Start: diff start step.2 ---
+> delegate1.test.dyndns        3600    IN      NS      ns1.delegate1.test.dyndns.
+> delegate1.test.dyndns        3600    IN      NS      ns2.delegate1.test.dyndns.
+> delegate2.test.dyndns        3600    IN      NS      ns1.delegate2.test.dyndns.
+> delegate2.test.dyndns        3600    IN      NS      ns2.example.com.
+> ns1.delegate1.test.dyndns    3600    IN      A       127.0.0.1
+> ns1.delegate2.test.dyndns    3600    IN      A       127.0.0.1
+> ns2.delegate1.test.dyndns    3600    IN      A       127.0.0.1
+> ns2.delegate2.test.dyndns    3600    IN      A       127.0.0.1
+--- End: diff start step.2 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+check delegate delete
+--- Start: diff start step.3 ---
+> ns1.delegate1.test.dyndns    3600    IN      A       127.0.0.1
+> ns1.delegate2.test.dyndns    3600    IN      A       127.0.0.1
+> ns2.delegate1.test.dyndns    3600    IN      A       127.0.0.1
+> ns2.delegate2.test.dyndns    3600    IN      A       127.0.0.1
+--- End: diff start step.3 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if glue records are deleted and zone back to how we started
+--- Start: diff start step.4 ---
+no difference
+--- End: diff start step.4 ---
+
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-narrow
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-optout
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-delegate/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb
new file mode 100644 (file)
index 0000000..cdb9d39
--- /dev/null
@@ -0,0 +1,34 @@
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if delegates are added.
+--- Start: diff start step.1 ---
+> a.b.c.delegate.test.dyndns   3600    IN      NS      ns1.test.dyndns.
+> c.delegate.test.dyndns       3600    IN      NS      ns1.test.dyndns.
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if c.delegate.test.dyndns. was removed correctly.
+--- Start: diff start step.2 ---
+> a.b.c.delegate.test.dyndns   3600    IN      NS      ns1.test.dyndns.
+--- End: diff start step.2 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+Check if records are all removed
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-narrow b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-narrow
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-optout
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-delete-parent-delegate/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb b/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb
new file mode 100644 (file)
index 0000000..6496406
--- /dev/null
@@ -0,0 +1,62 @@
+1 test.dyndns. 3600 IN NSEC cname1.test.dyndns. NS SOA MX RRSIG NSEC DNSKEY 1 test.dyndns. 3600 IN RRSIG NSEC 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ... 1 test.dyndns. 3600 IN RRSIG SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ... 1 test.dyndns. 3600 IN SOA ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400 2 . 32768 IN OPT Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0 Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+0      test.dyndns.    86400   IN      NSEC3PARAM      1 0 10 dcbe
+0      test.dyndns.    86400   IN      RRSIG   NSEC3PARAM 13 2 86400 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      ac2jl1kik929tr9i5rfcmbucm547n51a.test.dyndns.   3600    IN      NSEC3   1 [flags] 10 dcbe EE295AK1NDT9O0RLL1A4RPPB4NAOV4QM
+1      ac2jl1kik929tr9i5rfcmbucm547n51a.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      uba3qp1vffon9pq2r07e7ldrnh5mg90v.test.dyndns.   3600    IN      NSEC3   1 [flags] 10 dcbe 4KLD1OCH52V50U3NG1HM8R7960VRSVOM A RRSIG
+1      uba3qp1vffon9pq2r07e7ldrnh5mg90v.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM record exists and A-record added
+--- Start: diff start step.1 ---
+no difference
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+1      test.dyndns.    3600    IN      NSEC    cname1.test.dyndns. NS SOA MX RRSIG NSEC DNSKEY
+1      test.dyndns.    3600    IN      RRSIG   NSEC 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM is deleted
+--- Start: diff start step.2 ---
+no difference
+--- End: diff start step.2 ---
+
diff --git a/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3 b/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3
new file mode 100644 (file)
index 0000000..d975787
--- /dev/null
@@ -0,0 +1,91 @@
+0 test.dyndns. 86400 IN NSEC3PARAM 1 0 1 abcd 0 test.dyndns. 86400 IN RRSIG NSEC3PARAM 13 2 86400 [expiry] [inception] [keytag] test.dyndns. ... 2 . 32768 IN OPT Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0 Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+0      test.dyndns.    86400   IN      NSEC3PARAM      1 0 10 dcbe
+0      test.dyndns.    86400   IN      RRSIG   NSEC3PARAM 13 2 86400 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      ac2jl1kik929tr9i5rfcmbucm547n51a.test.dyndns.   3600    IN      NSEC3   1 [flags] 10 dcbe EE295AK1NDT9O0RLL1A4RPPB4NAOV4QM
+1      ac2jl1kik929tr9i5rfcmbucm547n51a.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      uba3qp1vffon9pq2r07e7ldrnh5mg90v.test.dyndns.   3600    IN      NSEC3   1 [flags] 10 dcbe 4KLD1OCH52V50U3NG1HM8R7960VRSVOM A RRSIG
+1      uba3qp1vffon9pq2r07e7ldrnh5mg90v.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM record exists and A-record added
+--- Start: diff start step.1 ---
+no difference
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+1      test.dyndns.    3600    IN      NSEC    cname1.test.dyndns. NS SOA MX RRSIG NSEC DNSKEY
+1      test.dyndns.    3600    IN      RRSIG   NSEC 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM is deleted
+--- Start: diff start step.2 ---
+no difference
+--- End: diff start step.2 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+0      test.dyndns.    86400   IN      NSEC3PARAM      1 0 1 abcd
+0      test.dyndns.    86400   IN      RRSIG   NSEC3PARAM 13 2 86400 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM is added again
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
diff --git a/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-optout b/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-optout
new file mode 100644 (file)
index 0000000..d975787
--- /dev/null
@@ -0,0 +1,91 @@
+0 test.dyndns. 86400 IN NSEC3PARAM 1 0 1 abcd 0 test.dyndns. 86400 IN RRSIG NSEC3PARAM 13 2 86400 [expiry] [inception] [keytag] test.dyndns. ... 2 . 32768 IN OPT Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0 Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+0      test.dyndns.    86400   IN      NSEC3PARAM      1 0 10 dcbe
+0      test.dyndns.    86400   IN      RRSIG   NSEC3PARAM 13 2 86400 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      ac2jl1kik929tr9i5rfcmbucm547n51a.test.dyndns.   3600    IN      NSEC3   1 [flags] 10 dcbe EE295AK1NDT9O0RLL1A4RPPB4NAOV4QM
+1      ac2jl1kik929tr9i5rfcmbucm547n51a.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+1      uba3qp1vffon9pq2r07e7ldrnh5mg90v.test.dyndns.   3600    IN      NSEC3   1 [flags] 10 dcbe 4KLD1OCH52V50U3NG1HM8R7960VRSVOM A RRSIG
+1      uba3qp1vffon9pq2r07e7ldrnh5mg90v.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM record exists and A-record added
+--- Start: diff start step.1 ---
+no difference
+--- End: diff start step.1 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+1      test.dyndns.    3600    IN      NSEC    cname1.test.dyndns. NS SOA MX RRSIG NSEC DNSKEY
+1      test.dyndns.    3600    IN      RRSIG   NSEC 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      a.host.test.dyndns.     3600    IN      NSEC    e.host.test.dyndns. A RRSIG NSEC
+1      a.host.test.dyndns.     3600    IN      RRSIG   NSEC 13 4 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      delete-add.test.dyndns. 3600    IN      NSEC    a.host.test.dyndns. A TXT RRSIG NSEC
+1      delete-add.test.dyndns. 3600    IN      RRSIG   NSEC 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM is deleted
+--- Start: diff start step.2 ---
+no difference
+--- End: diff start step.2 ---
+
+Answer:
+;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
+;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
+;; ZONE SECTION:
+;test.dyndns.                  IN      SOA
+
+0      test.dyndns.    86400   IN      NSEC3PARAM      1 0 1 abcd
+0      test.dyndns.    86400   IN      RRSIG   NSEC3PARAM 13 2 86400 [expiry] [inception] [keytag] test.dyndns. ...
+2      .       32768   IN      OPT     
+Rcode: 0 (No Error), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='test.dyndns.', qtype=NSEC3PARAM
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd 8PQJV4B3M0LCFMVAE0HP394LC154L1I7 CNAME RRSIG
+1      4i84rosksbmegcqfnkf6n6ci093h7rq4.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd DSA3TI9NU3APDSVL3F63QLVAKV555SR6 A RRSIG
+1      8ti9tgh8d81frr5vr4o1o5bvko42v9dq.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      NSEC3   1 [flags] 1 abcd LRESBBP3LV8BLGJ9FSGTDMM4Q7VJ3D6J
+1      lmrsadk2bb62qpruaules5i5ap06cp55.test.dyndns.   3600    IN      RRSIG   NSEC3 13 3 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      RRSIG   SOA 13 2 3600 [expiry] [inception] [keytag] test.dyndns. ...
+1      test.dyndns.    3600    IN      SOA     ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+2      .       32768   IN      OPT     
+Rcode: 3 (Non-Existent domain), RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='b.host.test.dyndns.', qtype=A
+Check if NSEC3PARAM is added again
+--- Start: diff start step.3 ---
+no difference
+--- End: diff start step.3 ---
+
diff --git a/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..0ca2f4e
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb-nsec3-optout
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-variant b/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..aa26cfb
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb-nsec3
\ No newline at end of file
diff --git a/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-variant b/regression-tests/tests/1dyndns-update-nsec3params/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..29e2781
--- /dev/null
@@ -0,0 +1 @@
+expected_result.lmdb
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nodnssec-variant b/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nodnssec-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-variant b/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-variant b/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.variant b/regression-tests/tests/pdnsutil-increase-serial-inception-epoch/expected_result.variant
new file mode 100644 (file)
index 0000000..2068751
--- /dev/null
@@ -0,0 +1,4 @@
+test.dyndns    3600    IN      SOA     ns1.test.dyndns ahu.example.dyndns 10 28800 7200 604800 86400
+Set 'test.dyndns..variant' meta SOA-EDIT = INCEPTION-EPOCH
+New serial is within range
+Set 'test.dyndns..variant' meta SOA-EDIT = 
diff --git a/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nodnssec-variant b/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nodnssec-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-narrow-variant b/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-narrow-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-optout-variant b/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-optout-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-variant b/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-nsec3-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-variant b/regression-tests/tests/pdnsutil-increase-serial/expected_result.lmdb-variant
new file mode 120000 (symlink)
index 0000000..d378dd9
--- /dev/null
@@ -0,0 +1 @@
+expected_result.variant
\ No newline at end of file
diff --git a/regression-tests/tests/pdnsutil-increase-serial/expected_result.variant b/regression-tests/tests/pdnsutil-increase-serial/expected_result.variant
new file mode 100644 (file)
index 0000000..dcc16b0
--- /dev/null
@@ -0,0 +1,6 @@
+SOA serial for zone test.dyndns..variant set to 2012060702
+Check that test.dyndns..variant. still has a valid ordername
+--- Start: diff start step.1 ---
+no difference
+--- End: diff start step.1 ---
+