diff options
author | Michael Adam <obnox@samba.org> | 2008-08-09 00:31:48 +0200 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2008-08-09 01:15:58 +0200 |
commit | bf291c95bceda9e8181999f3dc524589fd82814c (patch) | |
tree | 4ec8dcb733da92c590835583764156d307edca7f | |
parent | e0fa472a3b50dba7ab62541b8d6666f0ae29f397 (diff) | |
download | samba-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)
-rw-r--r-- | source3/include/proto.h | 2 | ||||
-rw-r--r-- | source3/param/loadparm.c | 24 |
2 files changed, 26 insertions, 0 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index a19d51fe0f..dec48e8714 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -5875,6 +5875,8 @@ bool lp_we_are_a_wins_server(void); bool lp_wins_proxy(void); bool lp_local_master(void); bool lp_domain_logons(void); +const char **lp_init_logon_delayed_hosts(void); +int lp_init_logon_delay(void); bool lp_load_printers(void); bool lp_readraw(void); bool lp_large_readwrite(void); 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) |