summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/nameserv.h6
-rw-r--r--source3/include/proto.h8
2 files changed, 11 insertions, 3 deletions
diff --git a/source3/include/nameserv.h b/source3/include/nameserv.h
index 9e4145213b..64a71b89ba 100644
--- a/source3/include/nameserv.h
+++ b/source3/include/nameserv.h
@@ -79,6 +79,8 @@
enum name_source {STATUS_QUERY, LMHOSTS, REGISTER, SELF, DNS, DNSFAIL};
enum node_type {B_NODE=0, P_NODE=1, M_NODE=2, NBDD_NODE=3};
enum packet_type {NMB_PACKET, DGRAM_PACKET};
+enum master_state { MST_NONE, MST_WON, MST_MSB, MST_BROWSER, MST_DOMAIN };
+
enum state_type
{
NAME_STATUS_MASTER_CHECK,
@@ -149,6 +151,9 @@ struct work_record
struct server_record *serverlist;
+ /* stage of development from non-master to master browser / domain master */
+ enum master_state state;
+
/* work group info */
fstring work_group;
int token; /* used when communicating with backup browsers */
@@ -159,6 +164,7 @@ struct work_record
int announce_interval;
BOOL needannounce;
+
/* election info */
BOOL RunningElection;
BOOL needelection;
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 3c51382ff7..fa04e284d3 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -1,8 +1,5 @@
/* This file is automatically generated with "make proto". DO NOT EDIT */
-
-/*The following definitions come from - */
-
BOOL check_access(int snum);
BOOL allow_access(char *deny_list,char *allow_list,struct from_host *client);
BOOL fromhost(int sock,struct from_host *f);
@@ -273,6 +270,10 @@ void check_master_browser(void);
void browser_gone(char *work_name, struct in_addr ip);
void send_election(struct subnet_record *d, char *group,uint32 criterion,
int timeup,char *name);
+void name_unregister_work(struct subnet_record *d, char *name, int name_type);
+void name_register_work(struct subnet_record *d, char *name, int name_type,
+ int nb_flags, time_t ttl, struct in_addr ip, BOOL bcast);
+void become_master(struct subnet_record *d, struct work_record *work);
void become_nonmaster(struct subnet_record *d, struct work_record *work,
int remove_type);
void run_elections(void);
@@ -309,6 +310,7 @@ BOOL interpret_node_status(struct subnet_record *d,
BOOL send_mailslot_reply(char *mailslot,int fd,char *buf,int len,char *srcname,
char *dstname,int src_type,int dest_type,
struct in_addr dest_ip,struct in_addr src_ip);
+BOOL special_browser_name(char *name, int type);
void remove_name(struct subnet_record *d, struct name_record *n);
void dump_names(void);
void load_netbios_names(void);