summaryrefslogtreecommitdiff
path: root/source3/param/loadparm.c
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2008-08-09 00:31:48 +0200
committerMichael Adam <obnox@samba.org>2008-08-09 01:15:58 +0200
commitbf291c95bceda9e8181999f3dc524589fd82814c (patch)
tree4ec8dcb733da92c590835583764156d307edca7f /source3/param/loadparm.c
parente0fa472a3b50dba7ab62541b8d6666f0ae29f397 (diff)
downloadsamba-bf291c95bceda9e8181999f3dc524589fd82814c.tar.gz
samba-bf291c95bceda9e8181999f3dc524589fd82814c.tar.bz2
samba-bf291c95bceda9e8181999f3dc524589fd82814c.zip
loadparm: add two parameters "init logon delay hosts" and "init logon delay"
"init logon delays hosts" takes a list of hosts names or addresses or networks for which the initial SAMLOGON reply should be delayed (so other DCs get preferred by XP workstations if there are any). This option takes the same type of list as "hosts allow" does. "init logon delay" allows one to configure the delay for the hosts configured for delayed initial samlogon with "init logon delayed hosts". The value is interpreted as milliseconds. The default value is 100. This commit only introduces the parameters. They will be activated in a subsequent commit. Michael (This used to be commit f7c1f85438f7e0da2a96e3fc8f774f8c6936370e)
Diffstat (limited to 'source3/param/loadparm.c')
-rw-r--r--source3/param/loadparm.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index 6902bb0437..7882b37c2c 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -273,6 +273,8 @@ struct global {
int iPreferredMaster;
int iDomainMaster;
bool bDomainLogons;
+ char **szInitLogonDelayedHosts;
+ int InitLogonDelay;
bool bEncryptPasswords;
bool bUpdateEncrypt;
int clientSchannel;
@@ -3190,6 +3192,23 @@ static struct parm_struct parm_table[] = {
.flags = FLAG_ADVANCED,
},
+ {
+ .label = "init logon delayed hosts",
+ .type = P_LIST,
+ .p_class = P_GLOBAL,
+ .ptr = &Globals.szInitLogonDelayedHosts,
+ .flags = FLAG_ADVANCED,
+ },
+
+ {
+ .label = "init logon delay",
+ .type = P_INTEGER,
+ .p_class = P_GLOBAL,
+ .ptr = &Globals.InitLogonDelay,
+ .flags = FLAG_ADVANCED,
+
+ },
+
{N_("Browse Options"), P_SEP, P_SEPARATOR},
{
@@ -4797,6 +4816,9 @@ static void init_globals(bool first_time_only)
Globals.bWINSsupport = False;
Globals.bWINSproxy = False;
+ TALLOC_FREE(Globals.szInitLogonDelayedHosts);
+ Globals.InitLogonDelay = 100; /* 100 ms default delay */
+
Globals.bDNSproxy = True;
/* this just means to use them if they exist */
@@ -5109,6 +5131,8 @@ FN_GLOBAL_BOOL(lp_we_are_a_wins_server, &Globals.bWINSsupport)
FN_GLOBAL_BOOL(lp_wins_proxy, &Globals.bWINSproxy)
FN_GLOBAL_BOOL(lp_local_master, &Globals.bLocalMaster)
FN_GLOBAL_BOOL(lp_domain_logons, &Globals.bDomainLogons)
+FN_GLOBAL_LIST(lp_init_logon_delayed_hosts, &Globals.szInitLogonDelayedHosts)
+FN_GLOBAL_INTEGER(lp_init_logon_delay, &Globals.InitLogonDelay)
FN_GLOBAL_BOOL(lp_load_printers, &Globals.bLoadPrinters)
FN_GLOBAL_BOOL(lp_readraw, &Globals.bReadRaw)
FN_GLOBAL_BOOL(lp_large_readwrite, &Globals.bLargeReadwrite)