Date: Fri Mar 12 20:27:23 2004 Author: crh Update of /data/cvs/samba/source/nmbd In directory dp.samba.org:/tmp/cvs-serv9757
Modified Files: nmbd_winsserver.c Log Message: Bug report 1079 and fix both from Bert Driehuis. This is an odd corner case having to do with <1C> group names (DC names). <1C> group names are called (by MS) "Internet Special Groups", which means that Microsoft's WINS servers will attempt to handle these names in something approximating an RFC1001/1002 compliant manner. The problem being reported here is this: If an initial registration sent by one of the group members is lost (network error, whatever) then subsequent refreshes from that particular machine will also fail. This only happens if the name is already active (because of other group members). In most cases, we (and MS) handle refreshes as registrations if the name is not in the database. In this situation, we missed the corner case. Bert's fix adds an 'else if' that catches the situation in which a refresh for an unlisted IP of an active <1C> group name is received. The refresh is simply handled as a registration when this happens. [Note: Committing in HEAD. I am writing some tools to do registrations and refreshes so that I can test this. I don't have an NT Domain for testing so I'm going to have to fudge. This fix is small (I cleaned up some Debug messages and comments in addition to the fix) and if you want to test it with 3.0.x you can just copy the HEAD version into your 3.0.x tree and recompile.] Revisions: nmbd_winsserver.c 1.60 => 1.61 http://www.samba.org/cgi-bin/cvsweb/samba/source/nmbd/nmbd_winsserver.c.diff?r1=1.60&r2=1.61