Added code to make nmbd always lose elections if 'local master'
authorSamba Release Account <samba-bugs@samba.org>
Wed, 21 May 1997 18:18:38 +0000 (18:18 +0000)
committerSamba Release Account <samba-bugs@samba.org>
Wed, 21 May 1997 18:18:38 +0000 (18:18 +0000)
parameter is set to False.
jallison@whistle.com

source/nameelect.c

index 82cebd3e6c5df8c135209cf8138a0f0f1e0b6323..35cbd754d17786307f6bfc2b87ccc4060ebd27c3 100644 (file)
@@ -699,6 +699,14 @@ static BOOL win_election(struct work_record *work,int version,uint32 criterion,
   int mytimeup = time(NULL) - StartupTime;
   uint32 mycriterion = work->ElectionCriterion;
 
+  /* If local master is set to false then never win
+     in election broadcasts. */
+  if(lp_local_master() == False)
+  {
+    DEBUG(3,("win_election: Losing election as local master == False\n"));
+    return False;
+  }
   DEBUG(4,("election comparison: %x:%x %x:%x %d:%d %s:%s\n",
           version,ELECTION_VERSION,
           criterion,mycriterion,
@@ -748,7 +756,7 @@ void process_election(struct packet_struct *p,char *buf)
 
   DEBUG(3,("Election request from %s %s vers=%d criterion=%08x timeup=%d\n",
           name,inet_ntoa(p->ip),version,criterion,timeup));
-  
   if (same_context(dgram)) return;
   
   for (work = d->workgrouplist; work; work = work->next)