summaryrefslogtreecommitdiff
path: root/source4/torture/dns
diff options
context:
space:
mode:
authorAmitay Isaacs <amitay@gmail.com>2014-11-03 11:57:50 +1100
committerAmitay Isaacs <amitay@samba.org>2014-11-21 06:14:55 +0100
commitb7f6b09a13daaa702aef5a0ab9f458521e4902b1 (patch)
tree3cf45c6eac011b917088033daffa7c8ed7c9858a /source4/torture/dns
parent5ec63b8bc1a16b1bbda7ec8e5442a1b3d6f2d13c (diff)
downloadsamba-b7f6b09a13daaa702aef5a0ab9f458521e4902b1.tar.gz
s4-dns: dlz-bind: Add trailing '.' to all fqdn strings
BIND 9.10.x is strict when sending records via putrr and putnamedrr. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10620 Thanks to Guenter Kukkukk for identifying the problem and resolution. Signed-off-by: Amitay Isaacs <amitay@gmail.com> Reviewed-by: Guenter Kukkukk <kukks@samba.org> Autobuild-User(master): Amitay Isaacs <amitay@samba.org> Autobuild-Date(master): Fri Nov 21 06:14:55 CET 2014 on sn-devel-104
Diffstat (limited to 'source4/torture/dns')
-rw-r--r--source4/torture/dns/dlz_bind9.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/source4/torture/dns/dlz_bind9.c b/source4/torture/dns/dlz_bind9.c
index 93da21f51c9..de07f67e814 100644
--- a/source4/torture/dns/dlz_bind9.c
+++ b/source4/torture/dns/dlz_bind9.c
@@ -353,7 +353,7 @@ static bool test_dlz_bind9_lookup(struct torture_context *tctx)
expected1->records[0].type = "soa";
expected1->records[0].ttl = 3600;
expected1->records[0].data = talloc_asprintf(expected1->records,
- "%s.%s hostmaster.%s 1 900 600 86400 3600",
+ "%s.%s. hostmaster.%s. 1 900 600 86400 3600",
torture_setting_string(tctx, "host", NULL),
lpcfg_dnsdomain(tctx->lp_ctx),
lpcfg_dnsdomain(tctx->lp_ctx));
@@ -362,7 +362,7 @@ static bool test_dlz_bind9_lookup(struct torture_context *tctx)
expected1->records[1].name = expected1->query_name;
expected1->records[1].type = "ns";
expected1->records[1].ttl = 900;
- expected1->records[1].data = talloc_asprintf(expected1->records, "%s.%s",
+ expected1->records[1].data = talloc_asprintf(expected1->records, "%s.%s.",
torture_setting_string(tctx, "host", NULL),
lpcfg_dnsdomain(tctx->lp_ctx));
torture_assert(tctx, expected1->records[1].data != NULL, "talloc failed");
@@ -471,40 +471,44 @@ static bool test_dlz_bind9_zonedump(struct torture_context *tctx)
expected1->num_records);
torture_assert(tctx, expected1->records != NULL, "talloc failed");
- expected1->records[0].name = lpcfg_dnsdomain(tctx->lp_ctx);
+ expected1->records[0].name = talloc_asprintf(expected1->records,
+ "%s.", lpcfg_dnsdomain(tctx->lp_ctx));
expected1->records[0].type = "soa";
expected1->records[0].ttl = 3600;
expected1->records[0].data = talloc_asprintf(expected1->records,
- "%s.%s hostmaster.%s 1 900 600 86400 3600",
+ "%s.%s. hostmaster.%s. 1 900 600 86400 3600",
torture_setting_string(tctx, "host", NULL),
lpcfg_dnsdomain(tctx->lp_ctx),
lpcfg_dnsdomain(tctx->lp_ctx));
torture_assert(tctx, expected1->records[0].data != NULL, "talloc failed");
- expected1->records[1].name = lpcfg_dnsdomain(tctx->lp_ctx);
+ expected1->records[1].name = talloc_asprintf(expected1->records,
+ "%s.", lpcfg_dnsdomain(tctx->lp_ctx));
expected1->records[1].type = "ns";
expected1->records[1].ttl = 900;
- expected1->records[1].data = talloc_asprintf(expected1->records, "%s.%s",
+ expected1->records[1].data = talloc_asprintf(expected1->records, "%s.%s.",
torture_setting_string(tctx, "host", NULL),
lpcfg_dnsdomain(tctx->lp_ctx));
torture_assert(tctx, expected1->records[1].data != NULL, "talloc failed");
- expected1->records[2].name = lpcfg_dnsdomain(tctx->lp_ctx);
+ expected1->records[2].name = talloc_asprintf(expected1->records,
+ "%s.", lpcfg_dnsdomain(tctx->lp_ctx));
expected1->records[2].type = "aaaa";
expected1->records[2].ttl = 900;
- expected1->records[3].name = lpcfg_dnsdomain(tctx->lp_ctx);
+ expected1->records[3].name = talloc_asprintf(expected1->records,
+ "%s.", lpcfg_dnsdomain(tctx->lp_ctx));
expected1->records[3].type = "a";
expected1->records[3].ttl = 900;
- expected1->records[4].name = talloc_asprintf(expected1->records, "%s.%s",
+ expected1->records[4].name = talloc_asprintf(expected1->records, "%s.%s.",
torture_setting_string(tctx, "host", NULL),
lpcfg_dnsdomain(tctx->lp_ctx));
torture_assert(tctx, expected1->records[4].name != NULL, "unknown host");
expected1->records[4].type = "aaaa";
expected1->records[4].ttl = 900;
- expected1->records[5].name = talloc_asprintf(expected1->records, "%s.%s",
+ expected1->records[5].name = talloc_asprintf(expected1->records, "%s.%s.",
torture_setting_string(tctx, "host", NULL),
lpcfg_dnsdomain(tctx->lp_ctx));
torture_assert(tctx, expected1->records[5].name != NULL, "unknown host");