summaryrefslogtreecommitdiff
path: root/source4/dns_server
diff options
context:
space:
mode:
authorMatthieu Patou <mat@matws.net>2012-10-01 21:36:34 -0700
committerMatthieu Patou <mat@matws.net>2012-10-07 22:11:48 -0700
commitffab1d7cb28590f8e1ee9b90a8f7dbb84e7adb07 (patch)
treeb750b8d58e5311c51785e60264f5cbe4ad232761 /source4/dns_server
parent95ea6d765b98d9cbdebaa8e23aad91525d94ad40 (diff)
downloadsamba-ffab1d7cb28590f8e1ee9b90a8f7dbb84e7adb07.tar.gz
samba-ffab1d7cb28590f8e1ee9b90a8f7dbb84e7adb07.tar.bz2
samba-ffab1d7cb28590f8e1ee9b90a8f7dbb84e7adb07.zip
s4-dns: Ignore zones that shouldn't be returned currently
RootDNSServers should never be returned (Windows DNS server don't) ..TrustAnchors should never be returned as is, (Windows returns TrustAnchors) and for the moment we don't support DNSSEC so we'd better not return this zone.
Diffstat (limited to 'source4/dns_server')
-rw-r--r--source4/dns_server/dns_server.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source4/dns_server/dns_server.c b/source4/dns_server/dns_server.c
index 003dd4ecde..e750e33e19 100644
--- a/source4/dns_server/dns_server.c
+++ b/source4/dns_server/dns_server.c
@@ -833,7 +833,13 @@ static void dns_task_init(struct task_server *task)
z->name = ldb_msg_find_attr_as_string(res->msgs[i], "name", NULL);
z->dn = talloc_move(z, &res->msgs[i]->dn);
-
+ /* Ignore the RootDNSServers zone and zones that we don't support yet */
+ if ((strcmp(z->name, "RootDNSServers") == 0) ||
+ (strcmp(z->name, "..TrustAnchors") == 0)) {
+ DEBUG(10, ("Ignoring zone %s\n", z->name));
+ talloc_free(z);
+ continue;
+ }
DLIST_ADD_END(dns->zones, z, NULL);
}