From 072504985973be17f64a23aaaa99a8d3ef5b2ea6 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Mon, 8 Jun 1998 19:09:47 +0000 Subject: Added code to add the Samba names onto the remote_broadcast subnet, as NT 4.x does directed broadcast node status requests for the *<0x0> name. Jeremy. (This used to be commit 8c6fe8870a72271a6acd1633efc362c59e283e19) --- source3/nmbd/nmbd_mynames.c | 13 +++++++++---- source3/nmbd/nmbd_namelistdb.c | 3 ++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/source3/nmbd/nmbd_mynames.c b/source3/nmbd/nmbd_mynames.c index 92ea3ea154..2bb8f775d0 100644 --- a/source3/nmbd/nmbd_mynames.c +++ b/source3/nmbd/nmbd_mynames.c @@ -64,8 +64,7 @@ Exiting.\n", global_myworkgroup, subrec->subnet_name)); return False; } - /* Each subnet entry, except for the remote_announce_broadcast subnet - and the wins_server_subnet has the magic Samba names. */ + /* Each subnet entry, except for the wins_server_subnet has the magic Samba names. */ add_samba_names_to_subnet(subrec); /* Register all our names including aliases. */ @@ -135,6 +134,12 @@ Exiting.\n", global_myworkgroup, subrec->subnet_name)); } } + /* + * We need to add the Samba names to the remote broadcast subnet, + * as NT 4.x does directed broadcast requests to the *<0x0> name. + */ + add_samba_names_to_subnet(remote_broadcast_subnet); + return True; } @@ -185,8 +190,8 @@ void refresh_my_names(time_t t) */ if(!is_refresh_already_queued( subrec, namerec)) refresh_name(subrec, namerec, NULL, NULL, NULL); - namerec->death_time += lp_max_ttl(); - namerec->refresh_time += lp_max_ttl(); + namerec->death_time += lp_max_ttl(); + namerec->refresh_time += lp_max_ttl(); } } } diff --git a/source3/nmbd/nmbd_namelistdb.c b/source3/nmbd/nmbd_namelistdb.c index 07d026e051..897505ca2b 100644 --- a/source3/nmbd/nmbd_namelistdb.c +++ b/source3/nmbd/nmbd_namelistdb.c @@ -445,7 +445,8 @@ void add_samba_names_to_subnet(struct subnet_record *subrec) /* These names are added permanently (ttl of zero) and will NOT be refreshed. */ - if((subrec == unicast_subnet) || (subrec == wins_server_subnet)) + if((subrec == unicast_subnet) || (subrec == wins_server_subnet) || + (subrec == remote_broadcast_subnet) ) { struct subnet_record *bcast_subrecs; int i; -- cgit