diff options
Diffstat (limited to 'src/tests/modules/unbound')
-rw-r--r-- | src/tests/modules/unbound/all.mk | 3 | ||||
-rw-r--r-- | src/tests/modules/unbound/dns.attrs | 11 | ||||
-rw-r--r-- | src/tests/modules/unbound/dns.unlang | 53 | ||||
-rw-r--r-- | src/tests/modules/unbound/module.conf | 4 | ||||
-rw-r--r-- | src/tests/modules/unbound/unbound.conf | 6 |
5 files changed, 77 insertions, 0 deletions
diff --git a/src/tests/modules/unbound/all.mk b/src/tests/modules/unbound/all.mk new file mode 100644 index 0000000..d64039f --- /dev/null +++ b/src/tests/modules/unbound/all.mk @@ -0,0 +1,3 @@ +# +# Test the "unbound" module +# diff --git a/src/tests/modules/unbound/dns.attrs b/src/tests/modules/unbound/dns.attrs new file mode 100644 index 0000000..1cce1c5 --- /dev/null +++ b/src/tests/modules/unbound/dns.attrs @@ -0,0 +1,11 @@ +# +# Input packet +# +Packet-Type = Access-Request +User-Name = "bob" +User-Password = "hello" + +# +# Expected answer +# +Response-Packet-Type == Access-Accept diff --git a/src/tests/modules/unbound/dns.unlang b/src/tests/modules/unbound/dns.unlang new file mode 100644 index 0000000..d53e433 --- /dev/null +++ b/src/tests/modules/unbound/dns.unlang @@ -0,0 +1,53 @@ +# Use builtin "local" zone +update request { + &Tmp-IP-Address-0 := "%{dns-a:localhost}" +} + +if (&Tmp-IP-Address-0 != 127.0.0.1) { + test_fail +} + +update request { + &Tmp-String-0 := "%{dns-aaaa:localhost}" +} + +if (&Tmp-String-0 != "::1") { + test_fail +} + +update request { + &Tmp-String-1 := "%{dns-ptr:1.0.0.127.in-addr.arpa}" +} + +if (&Tmp-String-1 != "localhost") { + test_fail +} + +# Use local data in module config to allow for dotted names +update request { + &Tmp-IP-Address-0 := "%{dns-a:www.example.com}" +} + +if (&Tmp-IP-Address-0 != 192.168.1.1) { + test_fail +} + +update request { + &Tmp-String-0 := "%{dns-ptr:1.1.168.192.in-addr.arpa}" +} + +if (&Tmp-String-0 != "www.example.com") { + test_fail +} + +# Try a real, known, network response +# Temporarily disabled while there is a bug in unbound +#update request { +# &Tmp-String-0 := "%{dns-ptr:8.8.8.8.in-addr.arpa}" +#} + +#if (&Tmp-String-0 != "dns.google") { +# test_fail +#} + +test_pass
\ No newline at end of file diff --git a/src/tests/modules/unbound/module.conf b/src/tests/modules/unbound/module.conf new file mode 100644 index 0000000..c0430d2 --- /dev/null +++ b/src/tests/modules/unbound/module.conf @@ -0,0 +1,4 @@ +unbound dns { + filename = "$ENV{MODULE_TEST_DIR}/unbound.conf" + timeout = 3000 +} diff --git a/src/tests/modules/unbound/unbound.conf b/src/tests/modules/unbound/unbound.conf new file mode 100644 index 0000000..33fc461 --- /dev/null +++ b/src/tests/modules/unbound/unbound.conf @@ -0,0 +1,6 @@ +server: + num-threads: 2 + local-data: 'www.example.com. A 192.168.1.1' + local-data: 'example.com. MX 10 mail.example.com' + local-data: 'example.com. MX 20 mail2.example.com' + local-data-ptr: '192.168.1.1 www.example.com' |