summaryrefslogtreecommitdiff
path: root/source3/nameserv.c
diff options
context:
space:
mode:
authorSamba Release Account <samba-bugs@samba.org>1997-05-20 00:32:51 +0000
committerSamba Release Account <samba-bugs@samba.org>1997-05-20 00:32:51 +0000
commitaa864415c5183c948fe9ae221023d40265c38013 (patch)
tree29e0aa79328568d93211d175353f1fd1bc2d3737 /source3/nameserv.c
parent5495a3446d769a2501ee558bda54146bef507e78 (diff)
downloadsamba-aa864415c5183c948fe9ae221023d40265c38013.tar.gz
samba-aa864415c5183c948fe9ae221023d40265c38013.tar.bz2
samba-aa864415c5183c948fe9ae221023d40265c38013.zip
dir.c: Fixed double slash issue.
includes.h: Changed to ifdef FAST_SHARE_MODES. ipc.c: Changed lp_workgroup() to myworkgroup. loadparm.c: Added new shared mem parameters. Added Luke's fix. locking.c: Rewrite to do share modes better (both fast and slow modes). nameannounce.c: Changed lp_workgroup() to myworkgroup. Added Luke's fix. nameconf.c: Changed lp_workgroup() to myworkgroup. namedbname.c: Improved debug. namedbserver.c: Changed lp_workgroup() to myworkgroup. namedbsubnet.c: Added Luke's fix - rewritten somewhat. namedbwork.c: Changed lp_workgroup() to myworkgroup. nameelect.c: Added Luke's fix - rewritten somewhat. nameresp.c: Stoped shadowing global. nameserv.c: Added Luke's fix - Improved debug. nameservreply.c: Improved debug. namework.c: Changed lp_workgroup() to myworkgroup. nmbd.c: Added Luke's fix - Changed lp_workgroup() to myworkgroup. pipes.c: Changed lp_workgroup() to myworkgroup. proto.h: Added Luke's fix, added smb_shm_ proto's. reply.c: Changed lp_workgroup() to myworkgroup. server.c: Rewrite to do share modes better (both fast and slow modes). shmem.c: Rewrite to do share modes better (both fast and slow modes). smb.h: Rewrite to do share modes better (both fast and slow modes). status.c: Rewrite to do share modes better (both fast and slow modes). trans2.c: Fixed double slash issue. util.c: Tidied up, created myworkgroup. Jeremy Allison (jallison@whistle.com). (This used to be commit 2a1711eaaf08bb6776770cd3c96b3010f431a677)
Diffstat (limited to 'source3/nameserv.c')
-rw-r--r--source3/nameserv.c42
1 files changed, 23 insertions, 19 deletions
diff --git a/source3/nameserv.c b/source3/nameserv.c
index 022b5521a2..9163642896 100644
--- a/source3/nameserv.c
+++ b/source3/nameserv.c
@@ -37,6 +37,7 @@ extern int DEBUGLEVEL;
extern pstring scope;
extern pstring myname;
+extern fstring myworkgroup;
extern struct in_addr ipzero;
extern struct in_addr wins_ip;
@@ -141,6 +142,9 @@ void add_my_name_entry(struct subnet_record *d,char *name,int type,int nb_flags)
}
else
{
+ DEBUG(4,("add_my_name_entry registering name %s with WINS server.\n",
+ name));
+
/* a time-to-live allows us to refresh this name with the WINS server. */
queue_netbios_pkt_wins(ClientNMB,
re_reg ? NMB_REG_REFRESH : NMB_REG, NAME_REGISTER,
@@ -179,33 +183,32 @@ void add_domain_names(time_t t)
for (d = FIRST_SUBNET; d; d = NEXT_SUBNET_INCLUDING_WINS(d))
{
- work = find_workgroupstruct(d, lp_workgroup(), False);
+ work = find_workgroupstruct(d, myworkgroup, False);
if (lp_domain_logons() && work && work->log_state == LOGON_NONE)
{
- make_nmb_name(&n,lp_workgroup(),0x1c,scope);
+ make_nmb_name(&n,myworkgroup,0x1c,scope);
if (!find_name(d->namelist, &n, FIND_SELF))
{
/* logon servers are group names - we don't expect this to fail. */
DEBUG(0,("%s attempting to become logon server for %s %s\n",
- timestring(), lp_workgroup(), inet_ntoa(d->bcast_ip)));
+ timestring(), myworkgroup, inet_ntoa(d->bcast_ip)));
become_logon_server(d, work);
}
}
}
- if(wins_subnet != 0)
- work = find_workgroupstruct(wins_subnet, lp_workgroup(), False);
-
- if (lp_domain_master() && work && work->dom_state == DOMAIN_NONE)
- {
-
- DEBUG(0,("add_domain_names:Checking for domain master on workgroup %s\n", lp_workgroup()));
+ for (d = FIRST_SUBNET; d; d = NEXT_SUBNET_INCLUDING_WINS(d))
+ {
+ work = find_workgroupstruct(d, myworkgroup, True);
- make_nmb_name(&n,lp_workgroup(),0x1b,scope);
- if (!find_name(wins_subnet->namelist, &n, FIND_SELF))
+ if (lp_domain_master() && work && work->dom_state == DOMAIN_NONE)
+ {
+ make_nmb_name(&n,myworkgroup,0x1b,scope);
+ if (!find_name(d->namelist, &n, FIND_SELF))
{
- DEBUG(0,("add_domain_names: attempting to become domain master browser on workgroup %s\n",
- lp_workgroup()));
+ DEBUG(0,("%s add_domain_names: attempting to become domain master \
+browser on workgroup %s %s\n",
+ timestring(), myworkgroup, inet_ntoa(d->bcast_ip)));
if (lp_wins_support())
{
@@ -216,8 +219,8 @@ void add_domain_names(time_t t)
*/
DEBUG(1,("%s initiating becoming domain master for %s\n",
- timestring(), lp_workgroup()));
- become_domain_master(wins_subnet, work);
+ timestring(), myworkgroup));
+ become_domain_master(d, work);
}
else
{
@@ -228,15 +231,17 @@ void add_domain_names(time_t t)
NetBIOS name 0x1b.
*/
- DEBUG(0,("add_domain_names:querying WINS for domain master on workgroup %s\n", lp_workgroup()));
+ DEBUG(0,("add_domain_names:querying WINS for domain master \
+on workgroup %s\n", myworkgroup));
queue_netbios_pkt_wins(ClientNMB,NMB_QUERY,NAME_QUERY_DOMAIN,
- lp_workgroup(), 0x1b,
+ myworkgroup, 0x1b,
0, 0,0,NULL,NULL,
False, False, ipzero, ipzero);
}
}
}
+ }
}
@@ -255,7 +260,6 @@ void add_my_names(void)
for (d = FIRST_SUBNET; d; d = NEXT_SUBNET_INCLUDING_WINS(d))
{
BOOL wins = (lp_wins_support() && (d == wins_subnet));
- struct work_record *work = find_workgroupstruct(d, lp_workgroup(), False);
add_my_name_entry(d, myname,0x20,nb_type|NB_ACTIVE);
add_my_name_entry(d, myname,0x03,nb_type|NB_ACTIVE);