]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Add mysqldiff to 1dyndns-update-delegate test
authorRuben d'Arco <cyclops@prof-x.net>
Mon, 20 May 2013 18:14:32 +0000 (20:14 +0200)
committermind04 <mind04@monshouwer.org>
Fri, 12 Jul 2013 15:29:37 +0000 (17:29 +0200)
regression-tests/1dyndns-update-delegate/command
regression-tests/1dyndns-update-delegate/expected_result
regression-tests/1dyndns-update-delegate/expected_result.dnssec [new file with mode: 0644]
regression-tests/1dyndns-update-delegate/expected_result.narrow [new file with mode: 0644]
regression-tests/1dyndns-update-delegate/expected_result.nsec3 [new file with mode: 0644]
regression-tests/1dyndns-update-delegate/expected_result.nsec3-optout [new file with mode: 0644]

index 2dcf8de4838349d8b5a4d6fa92a7983355e9dd57..eaa23c6a7fd2e16bdd356840cbffe63fc2eeff31 100755 (executable)
@@ -1,25 +1,27 @@
 #!/bin/sh
 
 cleandig delegate1.test.dyndns ANY hidesoadetails
+mysqldiff
 
 cleannsupdate <<!
 server $nameserver $port
 zone test.dyndns
 update add delegate1.test.dyndns 3600 NS ns1.delegate1.test.dyndns
 update add delegate1.test.dyndns 3600 NS ns2.delegate1.test.dyndns
-update add ns1.delegate1.test.dyndns 3600 A 192.168.0.1
-update add ns2.delegate1.test.dyndns 3600 A 192.168.0.2
+update add ns1.delegate1.test.dyndns 3600 A 127.0.0.1
+update add ns2.delegate1.test.dyndns 3600 A 127.0.0.1
 send
 answer
 !
 
 cleandig delegate1.test.dyndns ANY
+mysqldiff 1 'Check delegate1 added correctly'
 
 cleannsupdate <<!
 server $nameserver $port
 zone test.dyndns
-update add ns1.delegate2.test.dyndns 3600 A 192.168.0.3
-update add ns2.delegate2.test.dyndns 3600 A 192.168.0.4
+update add ns1.delegate2.test.dyndns 3600 A 127.0.0.1
+update add ns2.delegate2.test.dyndns 3600 A 127.0.0.1
 update add delegate2.test.dyndns 3600 NS ns1.delegate2.test.dyndns
 update add delegate2.test.dyndns 3600 NS ns2.example.com 
 send
@@ -27,6 +29,7 @@ answer
 !
 
 cleandig delegate2.test.dyndns ANY
+mysqldiff 2 'Check delegate2 added correctly' 
 
 cleannsupdate <<!
 server $nameserver $port
@@ -43,6 +46,7 @@ cleandig ns1.delegate1.test.dyndns ANY
 cleandig ns2.delegate1.test.dyndns ANY
 cleandig ns1.delegate2.test.dyndns ANY
 cleandig ns2.delegate2.test.dyndns ANY
+mysqldiff 3 'check delegate delete'
 
 cleannsupdate <<!
 server $nameserver $port
@@ -59,3 +63,4 @@ cleandig ns1.delegate1.test.dyndns ANY hidesoadetails
 cleandig ns2.delegate1.test.dyndns ANY hidesoadetails
 cleandig ns1.delegate2.test.dyndns ANY hidesoadetails
 cleandig ns2.delegate2.test.dyndns ANY hidesoadetails
+mysqldiff 4 'Check if glue records are deleted and zone back to how we started'
\ No newline at end of file
index 649d99aacd262794d7982b7a08838bdaf720ad25..7ad42e284914f114e7e6345b2e46ac1a5dc8de18 100644 (file)
@@ -9,10 +9,18 @@ Answer:
 
 1      delegate1.test.dyndns.  IN      NS      3600    ns1.delegate1.test.dyndns.
 1      delegate1.test.dyndns.  IN      NS      3600    ns2.delegate1.test.dyndns.
-2      ns1.delegate1.test.dyndns.      IN      A       3600    192.168.0.1
-2      ns2.delegate1.test.dyndns.      IN      A       3600    192.168.0.2
+2      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
 Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
 Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+Check delegate1 added correctly
+--- Start: diff start step.1 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600
+--- End: diff start step.1 ---
+
 Answer:
 ;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
 ;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
@@ -21,10 +29,22 @@ Answer:
 
 1      delegate2.test.dyndns.  IN      NS      3600    ns1.delegate2.test.dyndns.
 1      delegate2.test.dyndns.  IN      NS      3600    ns2.example.com.
-2      ns1.delegate2.test.dyndns.      IN      A       3600    192.168.0.3
+2      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
 2      ns2.example.com.        IN      A       120     192.168.1.2
 Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
 Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+Check delegate2 added correctly
+--- Start: diff start step.2 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600
+> delegate2.test.dyndns        NS      0       ns1.delegate2.test.dyndns       3600
+> delegate2.test.dyndns        NS      0       ns2.example.com 3600
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600
+--- End: diff start step.2 ---
+
 Answer:
 ;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
 ;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
@@ -37,18 +57,28 @@ Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
 1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
 Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
 Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
-0      ns1.delegate1.test.dyndns.      IN      A       3600    192.168.0.1
+0      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
 Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
 Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
-0      ns2.delegate1.test.dyndns.      IN      A       3600    192.168.0.2
+0      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
 Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
 Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
-0      ns1.delegate2.test.dyndns.      IN      A       3600    192.168.0.3
+0      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
 Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
 Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
-0      ns2.delegate2.test.dyndns.      IN      A       3600    192.168.0.4
+0      ns2.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
 Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
 Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+check delegate delete
+--- Start: diff start step.3 ---
+> delegate1.test.dyndns        NULL    NULL    NULL    NULL
+> delegate2.test.dyndns        NULL    NULL    NULL    NULL
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600
+--- End: diff start step.3 ---
+
 Answer:
 ;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: [id]
 ;; flags: qr aa; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
@@ -67,3 +97,8 @@ Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
 1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
 Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
 Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+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/1dyndns-update-delegate/expected_result.dnssec b/regression-tests/1dyndns-update-delegate/expected_result.dnssec
new file mode 100644 (file)
index 0000000..6843f73
--- /dev/null
@@ -0,0 +1,104 @@
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.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
+
+1      delegate1.test.dyndns.  IN      NS      3600    ns1.delegate1.test.dyndns.
+1      delegate1.test.dyndns.  IN      NS      3600    ns2.delegate1.test.dyndns.
+2      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+Check delegate1 added correctly
+--- Start: diff start step.1 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    'delegate1'     0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    'delegate1'     0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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      delegate2.test.dyndns.  IN      NS      3600    ns1.delegate2.test.dyndns.
+1      delegate2.test.dyndns.  IN      NS      3600    ns2.example.com.
+2      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.example.com.        IN      A       120     192.168.1.2
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+Check delegate2 added correctly
+--- Start: diff start step.2 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    'delegate1'     0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    'delegate1'     0
+> delegate2.test.dyndns        NS      0       ns1.delegate2.test.dyndns       3600    'delegate2'     0
+> delegate2.test.dyndns        NS      0       ns2.example.com 3600    'delegate2'     0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+0      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+0      ns2.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+check delegate delete
+--- Start: diff start step.3 ---
+> delegate1.test.dyndns        NULL    NULL    NULL    NULL    NULL    1
+> delegate2.test.dyndns        NULL    NULL    NULL    NULL    NULL    1
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    'delegate1 ns1' 1
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    'delegate2 ns1' 1
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    'delegate1 ns2' 1
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    'delegate2 ns2' 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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+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/1dyndns-update-delegate/expected_result.narrow b/regression-tests/1dyndns-update-delegate/expected_result.narrow
new file mode 100644 (file)
index 0000000..ec250e1
--- /dev/null
@@ -0,0 +1,104 @@
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.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
+
+1      delegate1.test.dyndns.  IN      NS      3600    ns1.delegate1.test.dyndns.
+1      delegate1.test.dyndns.  IN      NS      3600    ns2.delegate1.test.dyndns.
+2      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+Check delegate1 added correctly
+--- Start: diff start step.1 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    NULL    0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    NULL    0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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      delegate2.test.dyndns.  IN      NS      3600    ns1.delegate2.test.dyndns.
+1      delegate2.test.dyndns.  IN      NS      3600    ns2.example.com.
+2      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.example.com.        IN      A       120     192.168.1.2
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+Check delegate2 added correctly
+--- Start: diff start step.2 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    NULL    0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    NULL    0
+> delegate2.test.dyndns        NS      0       ns1.delegate2.test.dyndns       3600    NULL    0
+> delegate2.test.dyndns        NS      0       ns2.example.com 3600    NULL    0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+0      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+0      ns2.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+check delegate delete
+--- Start: diff start step.3 ---
+> delegate1.test.dyndns        NULL    NULL    NULL    NULL    ''      1
+> delegate2.test.dyndns        NULL    NULL    NULL    NULL    ''      1
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    ''      1
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    ''      1
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    ''      1
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    ''      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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+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/1dyndns-update-delegate/expected_result.nsec3 b/regression-tests/1dyndns-update-delegate/expected_result.nsec3
new file mode 100644 (file)
index 0000000..d2ec425
--- /dev/null
@@ -0,0 +1,104 @@
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.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
+
+1      delegate1.test.dyndns.  IN      NS      3600    ns1.delegate1.test.dyndns.
+1      delegate1.test.dyndns.  IN      NS      3600    ns2.delegate1.test.dyndns.
+2      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+Check delegate1 added correctly
+--- Start: diff start step.1 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    'h4tlip64juuiun7hbl0bsvqkkshh3pkj'      0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    'h4tlip64juuiun7hbl0bsvqkkshh3pkj'      0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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      delegate2.test.dyndns.  IN      NS      3600    ns1.delegate2.test.dyndns.
+1      delegate2.test.dyndns.  IN      NS      3600    ns2.example.com.
+2      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.example.com.        IN      A       120     192.168.1.2
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+Check delegate2 added correctly
+--- Start: diff start step.2 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    'h4tlip64juuiun7hbl0bsvqkkshh3pkj'      0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    'h4tlip64juuiun7hbl0bsvqkkshh3pkj'      0
+> delegate2.test.dyndns        NS      0       ns1.delegate2.test.dyndns       3600    'hpnrghdi20c5ikiegdmlcknaqu9a3bg0'      0
+> delegate2.test.dyndns        NS      0       ns2.example.com 3600    'hpnrghdi20c5ikiegdmlcknaqu9a3bg0'      0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+0      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+0      ns2.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+check delegate delete
+--- Start: diff start step.3 ---
+> delegate1.test.dyndns        NULL    NULL    NULL    NULL    'h4tlip64juuiun7hbl0bsvqkkshh3pkj'      1
+> delegate2.test.dyndns        NULL    NULL    NULL    NULL    'hpnrghdi20c5ikiegdmlcknaqu9a3bg0'      1
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    'rcogol03mg1pg3u4338eo0nvvh6bs567'      1
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    'asm440u7p2im2slo6iqo92vfp6jtopa0'      1
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    'oshpf39sqa4j1ciudbbvtb5dkrijnpss'      1
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    'rcd0fo052s6a41ao8ue0b43e1mhv50ds'      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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+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/1dyndns-update-delegate/expected_result.nsec3-optout b/regression-tests/1dyndns-update-delegate/expected_result.nsec3-optout
new file mode 100644 (file)
index 0000000..9fc6172
--- /dev/null
@@ -0,0 +1,104 @@
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.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
+
+1      delegate1.test.dyndns.  IN      NS      3600    ns1.delegate1.test.dyndns.
+1      delegate1.test.dyndns.  IN      NS      3600    ns2.delegate1.test.dyndns.
+2      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+Check delegate1 added correctly
+--- Start: diff start step.1 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    NULL    0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    NULL    0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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      delegate2.test.dyndns.  IN      NS      3600    ns1.delegate2.test.dyndns.
+1      delegate2.test.dyndns.  IN      NS      3600    ns2.example.com.
+2      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+2      ns2.example.com.        IN      A       120     192.168.1.2
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 0, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+Check delegate2 added correctly
+--- Start: diff start step.2 ---
+> delegate1.test.dyndns        NS      0       ns1.delegate1.test.dyndns       3600    NULL    0
+> delegate1.test.dyndns        NS      0       ns2.delegate1.test.dyndns       3600    NULL    0
+> delegate2.test.dyndns        NS      0       ns1.delegate2.test.dyndns       3600    NULL    0
+> delegate2.test.dyndns        NS      0       ns2.example.com 3600    NULL    0
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    NULL    0
+--- 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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+0      ns2.delegate1.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+0      ns1.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+0      ns2.delegate2.test.dyndns.      IN      A       3600    127.0.0.1
+Rcode: 0, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+check delegate delete
+--- Start: diff start step.3 ---
+> delegate1.test.dyndns        NULL    NULL    NULL    NULL    'h4tlip64juuiun7hbl0bsvqkkshh3pkj'      1
+> delegate2.test.dyndns        NULL    NULL    NULL    NULL    'hpnrghdi20c5ikiegdmlcknaqu9a3bg0'      1
+> ns1.delegate1.test.dyndns    A       0       127.0.0.1       3600    'rcogol03mg1pg3u4338eo0nvvh6bs567'      1
+> ns1.delegate2.test.dyndns    A       0       127.0.0.1       3600    'asm440u7p2im2slo6iqo92vfp6jtopa0'      1
+> ns2.delegate1.test.dyndns    A       0       127.0.0.1       3600    'oshpf39sqa4j1ciudbbvtb5dkrijnpss'      1
+> ns2.delegate2.test.dyndns    A       0       127.0.0.1       3600    'rcd0fo052s6a41ao8ue0b43e1mhv50ds'      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
+
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate1.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns1.delegate2.test.dyndns.', qtype=ANY
+1      test.dyndns.    IN      SOA     3600    ns1.test.dyndns. ahu.example.dyndns. [serial] 28800 7200 604800 86400
+Rcode: 3, RD: 0, QR: 1, TC: 0, AA: 1, opcode: 0
+Reply to question for qname='ns2.delegate2.test.dyndns.', qtype=ANY
+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 ---
+