summaryrefslogtreecommitdiff
path: root/source4/dns_server/dns_query.c
diff options
context:
space:
mode:
authorKai Blin <kai@samba.org>2012-03-27 13:36:16 +0200
committerKai Blin <kai@samba.org>2012-03-27 16:03:16 +0200
commit8d9da67185aac48d7d0bc1e7b90262ae9afc6a64 (patch)
tree6b8e7f733db82291d961e43c72e3dbf94896905d /source4/dns_server/dns_query.c
parenta99139160555072339f8f9cc5912c570158fc236 (diff)
downloadsamba-8d9da67185aac48d7d0bc1e7b90262ae9afc6a64.tar.gz
samba-8d9da67185aac48d7d0bc1e7b90262ae9afc6a64.tar.bz2
samba-8d9da67185aac48d7d0bc1e7b90262ae9afc6a64.zip
s4 dns: Only forward for zones we don't own
Diffstat (limited to 'source4/dns_server/dns_query.c')
-rw-r--r--source4/dns_server/dns_query.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/source4/dns_server/dns_query.c b/source4/dns_server/dns_query.c
index e57512c488..9d287bd3a4 100644
--- a/source4/dns_server/dns_query.c
+++ b/source4/dns_server/dns_query.c
@@ -226,8 +226,9 @@ WERROR dns_server_process_query(struct dns_server *dns,
return DNS_ERR(NOT_IMPLEMENTED);
}
- werror = handle_question(dns, mem_ctx, &in->questions[0], &ans, &num_answers);
- if(W_ERROR_EQUAL(DNS_ERR(NAME_ERROR), werror)) {
+ if (dns_authorative_for_zone(dns, in->questions[0].name)) {
+ werror = handle_question(dns, mem_ctx, &in->questions[0], &ans, &num_answers);
+ } else {
DEBUG(2, ("I don't feel responsible for '%s', forwarding\n", in->questions[0].name));
werror = ask_forwarder(mem_ctx, &in->questions[0], &ans, &num_answers,
&ns, &num_nsrecs, &adds, &num_additional);