From b4863b07f4d659fe37531f04621a80180c014e0a Mon Sep 17 00:00:00 2001 From: Samba Release Account Date: Sun, 6 Jul 1997 12:06:23 +0000 Subject: replaced the "wins proxy" to treat NetBIOS names as DNS names with new "dns proxy" option. the "wins proxy" option should be used for broadcast only hosts, and isn't properly implemented anyway. the new "dns proxy" option can be disabled if the (blocking) dns resolution takes up a significant amount of time. this _will_ occur if gethostbyname does external DNS lookups, instead of just (immediately) returning entries in /etc/hosts. lkcl (This used to be commit 350dfc57dd3001ba27519000a2ab9dd541a66ac7) --- source3/nameservreply.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'source3/nameservreply.c') diff --git a/source3/nameservreply.c b/source3/nameservreply.c index 9e46b80303..81ffe9ffae 100644 --- a/source3/nameservreply.c +++ b/source3/nameservreply.c @@ -559,12 +559,13 @@ void reply_name_query(struct packet_struct *p) } /* do we want to do dns lookups? */ - /* XXXX this DELAYS nmbd while it does a search. not a good idea - but there's no pleasant alternative. phil@hands.com suggested - making the name a full DNS name, which would succeed / fail - much quicker. + /* XXXX this DELAYS nmbd while it does a search. lp_dns_proxy() + can be switched off, to ensure that the blocking doesn't occur. + a better solution would be to fork, but this will require a + mechanism to carry on processing after the query is resolved + (similar to the netbios queue). */ - if (success && !n && (lp_wins_proxy() || !bcast)) + if (success && !n && (lp_dns_proxy() || !bcast)) { n = dns_name_search(question, p->timestamp); } -- cgit