From bd0d54cfd73cf9dae9be038ddf043252970127dc Mon Sep 17 00:00:00 2001 From: Samba Release Account Date: Wed, 21 May 1997 18:18:38 +0000 Subject: Added code to make nmbd always lose elections if 'local master' parameter is set to False. jallison@whistle.com (This used to be commit 1bcf6791c79b846e3702bd2f91322b7666a8f323) --- source3/nameelect.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/source3/nameelect.c b/source3/nameelect.c index 82cebd3e6c..35cbd754d1 100644 --- a/source3/nameelect.c +++ b/source3/nameelect.c @@ -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) -- cgit