From a2450e6fb3a2b53bdfc128b851f0d44d245e9eeb Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 31 Aug 1998 09:38:50 +0000 Subject: I looked at the refresh issue a bit more and discovered that Samba also doesn't switch to a registration if a refresh fails, instead the name is removed! This makes it even more imortant that a Samba WINS server accepts refresh requests as registration requests if the name is not registered. I've gone ahead and implemented this. (This used to be commit 07f825fc9491bb5adac047854e67c63f7757143b) --- source3/nmbd/nmbd_winsserver.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source3/nmbd/nmbd_winsserver.c') diff --git a/source3/nmbd/nmbd_winsserver.c b/source3/nmbd/nmbd_winsserver.c index 2fcc95e1d6..48d27f7bae 100644 --- a/source3/nmbd/nmbd_winsserver.c +++ b/source3/nmbd/nmbd_winsserver.c @@ -420,14 +420,15 @@ IP %s\n", namestr(question), inet_ntoa(from_ip) )); /* * If this is a refresh request and the name doesn't exist then - * fail it. + * treat it like a registration request. This allows us to recover + * from errors (tridge) */ if(namerec == NULL) { DEBUG(3,("wins_process_name_refresh_request: Name refresh for name %s and \ -the name does not exist.\n", namestr(question) )); - send_wins_name_registration_response(NAM_ERR, 0, p); +the name does not exist. Treating as registration.\n", namestr(question) )); + wins_process_name_registration_request(subrec,p); return; } -- cgit