From f76ee31ccf40a19ade72cb0f83b356456e645e47 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 22 Dec 2005 20:35:01 +0000 Subject: r12437: if the client gives us an unicast name query with recursion_desired, it's a wins server request, even if it's a name of one of our interfaces metze (This used to be commit 33c1d4a078a16ad45a3957f4d053b089a76f9935) --- source4/nbt_server/query.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'source4/nbt_server/query.c') diff --git a/source4/nbt_server/query.c b/source4/nbt_server/query.c index 1d8a610750..f71d7b99ed 100644 --- a/source4/nbt_server/query.c +++ b/source4/nbt_server/query.c @@ -54,6 +54,12 @@ void nbtd_request_query(struct nbt_name_socket *nbtsock, /* see if we have the requested name on this interface */ name = &packet->questions[0].name; + if (!(packet->operation & NBT_FLAG_BROADCAST) && + (packet->operation & NBT_FLAG_RECURSION_DESIRED)) { + nbtd_winsserver_request(nbtsock, packet, src); + return; + } + iname = nbtd_find_iname(iface, name, 0); if (iname == NULL) { @@ -62,13 +68,6 @@ void nbtd_request_query(struct nbt_name_socket *nbtsock, return; } - /* if the name does not exist, then redirect to WINS - server if recursion has been asked for */ - if (packet->operation & NBT_FLAG_RECURSION_DESIRED) { - nbtd_winsserver_request(nbtsock, packet, src); - return; - } - /* otherwise send a negative reply */ nbtd_negative_name_query_reply(nbtsock, packet, src); return; -- cgit