diff options
author | Andrew Tridgell <tridge@samba.org> | 2000-01-07 06:55:36 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2000-01-07 06:55:36 +0000 |
commit | 171da4d78736730557a94b44af9f2d62081b80ba (patch) | |
tree | ad74341f9d50a521baec09c65637b81b150a0891 /source3/nmbd/nmbd_browsesync.c | |
parent | 102e44e446035bdcc7611b8b556d0e20978fbb80 (diff) | |
download | samba-171da4d78736730557a94b44af9f2d62081b80ba.tar.gz |
this looks like a big commit, but it isn't really :)
This fixes our netbios scope handling. We now have a 'netbios scope' option
in smb.conf and the scope option is removed from make_nmb_name()
this was prompted by a bug in our PDC finding code where it didn't append
the scope to the query of the '*' name.
(This used to be commit b563be824b8c3141c49558eced7829b48d4ab26f)
Diffstat (limited to 'source3/nmbd/nmbd_browsesync.c')
-rw-r--r-- | source3/nmbd/nmbd_browsesync.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/source3/nmbd/nmbd_browsesync.c b/source3/nmbd/nmbd_browsesync.c index b177fb524e9..23ca0a398f5 100644 --- a/source3/nmbd/nmbd_browsesync.c +++ b/source3/nmbd/nmbd_browsesync.c @@ -26,7 +26,6 @@ #include "smb.h" extern int DEBUGLEVEL; -extern pstring scope; extern struct in_addr ipzero; extern pstring global_myname; extern fstring global_myworkgroup; @@ -226,7 +225,7 @@ static void domain_master_node_status_success(struct subnet_record *subrec, { struct nmb_name nmbname; - make_nmb_name(&nmbname, qname, name_type, scope); + make_nmb_name(&nmbname, qname, name_type); /* Copy the dmb name and IP address into the workgroup struct. */ @@ -324,8 +323,7 @@ static void find_domain_master_name_query_success(struct subnet_record *subrec, putip((char *)&work->dmb_addr, &ipzero); /* Now initiate the node status request. */ - memset((char *)&nmbname, '\0',sizeof(nmbname)); - nmbname.name[0] = '*'; + make_nmb_name(&nmbname,"*",0x0); /* Put the workgroup name into the userdata so we know what workgroup we're talking to when the reply comes @@ -391,7 +389,7 @@ void announce_and_sync_with_domain_master_browser( struct subnet_record *subrec, return; } - make_nmb_name(&nmbname,work->work_group,0x1b,scope); + make_nmb_name(&nmbname,work->work_group,0x1b); /* First, query for the WORKGROUP<1b> name from the WINS server. */ query_name(unicast_subnet, nmbname.name, nmbname.name_type, @@ -486,7 +484,7 @@ static void get_domain_master_name_node_status_success(struct subnet_record *sub /* remember who the master is */ fstrcpy(work->local_master_browser_name, server_name); - make_nmb_name(&nmbname, server_name, 0x20, scope); + make_nmb_name(&nmbname, server_name, 0x20); work->dmb_name = nmbname; work->dmb_addr = from_ip; } @@ -549,8 +547,7 @@ static void find_all_domain_master_names_query_success(struct subnet_record *sub for(i = 0; i < rrec->rdlength / 6; i++) { /* Initiate the node status requests. */ - memset((char *)&nmbname, '\0', sizeof(nmbname)); - nmbname.name[0] = '*'; + make_nmb_name(&nmbname, "*", 0); putip((char *)&send_ip, (char *)&rrec->rdata[(i*6) + 2]); @@ -636,7 +633,7 @@ void collect_all_workgroup_names_from_wins_server(time_t t) lastrun = t; - make_nmb_name(&nmbname,"*",0x1b,scope); + make_nmb_name(&nmbname,"*",0x1b); /* First, query for the *<1b> name from the WINS server. */ query_name(unicast_subnet, nmbname.name, nmbname.name_type, @@ -694,7 +691,7 @@ void sync_all_dmbs(time_t t) the same as the unicast local master */ make_nmb_name(&work->dmb_name, work->local_master_browser_name, - 0x20, scope); + 0x20); } DEBUG(3,("Initiating DMB<->DMB sync with %s(%s)\n", |