Old entries from PC in wins.dat are not deleted
Günay Duman
gunay.duman at yahoo.com.tr
Thu Oct 8 16:25:01 MDT 2009
Hi,
I hope the problem can be understood to explain.
I made the observation that computer name in wins.dat are not deleted.
I once watched a little and therefore had not turned on my PC. It
still has TTL of 3 days. I have had to elapse the TTL. Then got my PC
again a TTL, but this time it was a day long. Had elapsed when the
well, my PC again to get TTL of 3 days. I think there is an error.
In the logs I could see that source nmbd/nmbd_winsserver.c is responsible for the function.
Here are my logs:
[2009/10/05 19:19:59, 3, pid = 8461]
nmbd / nmbd_winsserver.c: wins_processing_traverse_fn (2149)
: wins_processing_traverse_fn expiring PCSERK <00>
[2009/10/05 19:19:59, 3, pid = 8461]
nmbd / nmbd_winsserver.c: wins_processing_traverse_fn (2149)
: wins_processing_traverse_fn expiring PCSERK <20>
[2009/10/05 19:19:59, 4, pid = 8461]
nmbd / nmbd_workgroupdb.c: find_workgroup_on_subnet (171)
find_workgroup_on_subnet: workgroup search for WORKGROUP on subnet
UNICAST_SUBNET: found.
[2009/10/05 19:19:59, 4, pid = 8461]
nmbd / nmbd_workgroupdb.c: find_workgroup_on_subnet (171)
find_workgroup_on_subnet: workgroup search for WORKGROUP on subnet
UNICAST_SUBNET: found.
Source:
/* handle records, samba is the wins owner */
if (ip_equal(namerec->data.wins_ip, our_fake_ip)) {
switch (namerec->data.wins_flags & WINS_STATE_MASK) {
case WINS_ACTIVE:
namerec->data.wins_flags&=~WINS_STATE_MASK;
namerec->data.wins_flags|
=WINS_RELEASED;
namerec->data.death_time = t +
EXTINCTION_INTERVAL;
DEBUG(3,("wins_processing_traverse_fn:
expiring %s\n",
nmb_namestr(&namerec->name)));
store_record = True;
goto done;
case WINS_RELEASED:
namerec->data.wins_flags&=~WINS_STATE_MASK;
namerec->data.wins_flags|
=WINS_TOMBSTONED;
namerec->data.death_time = t +
EXTINCTION_TIMEOUT;
get_global_id_and_update(&namerec->data.id, True);
DEBUG(3,("wins_processing_traverse_fn:
tombstoning %s\n",
nmb_namestr(&namerec->name)));
store_record = True;
goto done;
case WINS_TOMBSTONED:
DEBUG(3,("wins_processing_traverse_fn:
deleting %s\n",
nmb_namestr(&namerec->name)));
remove_name_from_wins_namelist(namerec );
goto done;
}
In the source code I can see that he started the state
"WINS_ACTIVE" has (3 days), then gets one chance and again
"WINS_RELEASED" get (1 day) and actually get one days after the status
WINS_TOMBSTONED "and should should be deleted from the list. Instead,
it regains "WINS_ACTIVE" (3 days).
As far as I can see, the data fields data.wins_flags confused
with data.nb_flags.
Would be glad if someone can confirm this bug, or
could be a solution to my problem.
I'd be very happy, as I the current
status ( "WINS_ACTIVE" WINS_RELEASED "and" WINS_TOMBSTONED ") could
check the computer? Thus, a feature I have not found.
Thank you already
Günay Duman
__________________________________________________
Yahoo! kullanıyor musunuz?
İstenmeyen postadan bıktınız mı? Yahoo! Posta'da piyasanın en iyi istenmeyen posta korunması var
http://tr.mail.yahoo.com
More information about the samba-technical
mailing list