mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
r25037: Start passing the context around.
(This used to be commit 88c72ac75f
)
This commit is contained in:
parent
98b57d5eb6
commit
2461a4f14b
@ -578,165 +578,6 @@ struct parm_struct *lp_parm_table(void)
|
||||
return parm_table;
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
Initialise the global parameter structure.
|
||||
***************************************************************************/
|
||||
static void init_globals(void)
|
||||
{
|
||||
int i;
|
||||
char *myname;
|
||||
|
||||
DEBUG(3, ("Initialising global parameters\n"));
|
||||
|
||||
for (i = 0; parm_table[i].label; i++) {
|
||||
if ((parm_table[i].type == P_STRING ||
|
||||
parm_table[i].type == P_USTRING) &&
|
||||
parm_table[i].ptr &&
|
||||
!(parm_table[i].flags & FLAG_CMDLINE)) {
|
||||
string_set(talloc_autofree_context(),
|
||||
(char **)parm_table[i].ptr, "");
|
||||
}
|
||||
}
|
||||
|
||||
lp_do_global_parameter("config file", dyn_CONFIGFILE);
|
||||
|
||||
lp_do_global_parameter("share backend", "classic");
|
||||
|
||||
lp_do_global_parameter("server role", "standalone");
|
||||
|
||||
/* options that can be set on the command line must be initialised via
|
||||
the slower lp_do_global_parameter() to ensure that FLAG_CMDLINE is obeyed */
|
||||
#ifdef TCP_NODELAY
|
||||
lp_do_global_parameter("socket options", "TCP_NODELAY");
|
||||
#endif
|
||||
lp_do_global_parameter("workgroup", DEFAULT_WORKGROUP);
|
||||
myname = get_myname();
|
||||
lp_do_global_parameter("netbios name", myname);
|
||||
SAFE_FREE(myname);
|
||||
lp_do_global_parameter("name resolve order", "lmhosts wins host bcast");
|
||||
|
||||
lp_do_global_parameter("fstype", FSTYPE_STRING);
|
||||
lp_do_global_parameter("ntvfs handler", "unixuid default");
|
||||
lp_do_global_parameter("max connections", "-1");
|
||||
|
||||
lp_do_global_parameter("dcerpc endpoint servers", "epmapper srvsvc wkssvc rpcecho samr netlogon lsarpc spoolss drsuapi winreg dssetup unixinfo");
|
||||
lp_do_global_parameter("server services", "smb rpc nbt wrepl ldap cldap web kdc drepl winbind");
|
||||
lp_do_global_parameter("ntptr providor", "simple_ldb");
|
||||
lp_do_global_parameter("auth methods:domain controller", "anonymous sam_ignoredomain");
|
||||
lp_do_global_parameter("auth methods:member server", "anonymous sam winbind");
|
||||
lp_do_global_parameter("auth methods:standalone", "anonymous sam_ignoredomain");
|
||||
lp_do_global_parameter("private dir", dyn_PRIVATE_DIR);
|
||||
lp_do_global_parameter("sam database", "sam.ldb");
|
||||
lp_do_global_parameter("secrets database", "secrets.ldb");
|
||||
lp_do_global_parameter("spoolss database", "spoolss.ldb");
|
||||
lp_do_global_parameter("wins config database", "wins_config.ldb");
|
||||
lp_do_global_parameter("wins database", "wins.ldb");
|
||||
lp_do_global_parameter("registry:HKEY_LOCAL_MACHINE", "hklm.ldb");
|
||||
|
||||
/* This hive should be dynamically generated by Samba using
|
||||
data from the sam, but for the moment leave it in a tdb to
|
||||
keep regedt32 from popping up an annoying dialog. */
|
||||
lp_do_global_parameter("registry:HKEY_USERS", "hku.ldb");
|
||||
|
||||
/* using UTF8 by default allows us to support all chars */
|
||||
lp_do_global_parameter("unix charset", "UTF8");
|
||||
|
||||
/* Use codepage 850 as a default for the dos character set */
|
||||
lp_do_global_parameter("dos charset", "CP850");
|
||||
|
||||
/*
|
||||
* Allow the default PASSWD_CHAT to be overridden in local.h.
|
||||
*/
|
||||
lp_do_global_parameter("passwd chat", DEFAULT_PASSWD_CHAT);
|
||||
|
||||
lp_do_global_parameter("pid directory", dyn_PIDDIR);
|
||||
lp_do_global_parameter("lock dir", dyn_LOCKDIR);
|
||||
lp_do_global_parameter("modules dir", dyn_MODULESDIR);
|
||||
lp_do_global_parameter("ncalrpc dir", dyn_NCALRPCDIR);
|
||||
|
||||
lp_do_global_parameter("socket address", "0.0.0.0");
|
||||
lp_do_global_parameter_var("server string",
|
||||
"Samba %s", SAMBA_VERSION_STRING);
|
||||
|
||||
lp_do_global_parameter_var("announce version", "%d.%d",
|
||||
DEFAULT_MAJOR_VERSION,
|
||||
DEFAULT_MINOR_VERSION);
|
||||
|
||||
lp_do_global_parameter("password server", "*");
|
||||
|
||||
lp_do_global_parameter("max mux", "50");
|
||||
lp_do_global_parameter("max xmit", "12288");
|
||||
lp_do_global_parameter("password level", "0");
|
||||
lp_do_global_parameter("LargeReadwrite", "True");
|
||||
lp_do_global_parameter("server min protocol", "CORE");
|
||||
lp_do_global_parameter("server max protocol", "NT1");
|
||||
lp_do_global_parameter("client min protocol", "CORE");
|
||||
lp_do_global_parameter("client max protocol", "NT1");
|
||||
lp_do_global_parameter("security", "USER");
|
||||
lp_do_global_parameter("paranoid server security", "True");
|
||||
lp_do_global_parameter("EncryptPasswords", "True");
|
||||
lp_do_global_parameter("ReadRaw", "True");
|
||||
lp_do_global_parameter("WriteRaw", "True");
|
||||
lp_do_global_parameter("NullPasswords", "False");
|
||||
lp_do_global_parameter("ObeyPamRestrictions", "False");
|
||||
lp_do_global_parameter("announce as", "NT SERVER");
|
||||
|
||||
lp_do_global_parameter("TimeServer", "False");
|
||||
lp_do_global_parameter("BindInterfacesOnly", "False");
|
||||
lp_do_global_parameter("Unicode", "True");
|
||||
lp_do_global_parameter("ClientLanManAuth", "True");
|
||||
lp_do_global_parameter("LanmanAuth", "True");
|
||||
lp_do_global_parameter("NTLMAuth", "True");
|
||||
lp_do_global_parameter("client use spnego principal", "False");
|
||||
|
||||
lp_do_global_parameter("UnixExtensions", "False");
|
||||
|
||||
lp_do_global_parameter("PreferredMaster", "Auto");
|
||||
lp_do_global_parameter("LocalMaster", "True");
|
||||
|
||||
lp_do_global_parameter("wins support", "False");
|
||||
lp_do_global_parameter("dns proxy", "True");
|
||||
|
||||
lp_do_global_parameter("winbind separator", "\\");
|
||||
lp_do_global_parameter("winbind sealed pipes", "True");
|
||||
lp_do_global_parameter("winbindd socket directory", dyn_WINBINDD_SOCKET_DIR);
|
||||
lp_do_global_parameter("template shell", "/bin/false");
|
||||
lp_do_global_parameter("template homedir", "/home/%WORKGROUP%/%ACCOUNTNAME%");
|
||||
|
||||
lp_do_global_parameter("client signing", "Yes");
|
||||
lp_do_global_parameter("server signing", "auto");
|
||||
|
||||
lp_do_global_parameter("use spnego", "True");
|
||||
|
||||
lp_do_global_parameter("smb ports", "445 139");
|
||||
lp_do_global_parameter("nbt port", "137");
|
||||
lp_do_global_parameter("dgram port", "138");
|
||||
lp_do_global_parameter("cldap port", "389");
|
||||
lp_do_global_parameter("krb5 port", "88");
|
||||
lp_do_global_parameter("kpasswd port", "464");
|
||||
lp_do_global_parameter("web port", "901");
|
||||
lp_do_global_parameter("web application directory", dyn_WEBAPPSDIR);
|
||||
lp_do_global_parameter("jsonrpc services directory", dyn_SERVICESDIR);
|
||||
|
||||
lp_do_global_parameter("nt status support", "True");
|
||||
|
||||
lp_do_global_parameter("max wins ttl", "518400"); /* 6 days */
|
||||
lp_do_global_parameter("min wins ttl", "10");
|
||||
|
||||
lp_do_global_parameter("tls enabled", "True");
|
||||
lp_do_global_parameter("tls keyfile", "tls/key.pem");
|
||||
lp_do_global_parameter("tls certfile", "tls/cert.pem");
|
||||
lp_do_global_parameter("tls cafile", "tls/ca.pem");
|
||||
lp_do_global_parameter_var("js include", "%s", dyn_JSDIR);
|
||||
lp_do_global_parameter_var("setup directory", "%s", dyn_SETUPDIR);
|
||||
|
||||
for (i = 0; parm_table[i].label; i++) {
|
||||
if (!(parm_table[i].flags & FLAG_CMDLINE)) {
|
||||
parm_table[i].flags |= FLAG_DEFAULT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static TALLOC_CTX *lp_talloc;
|
||||
|
||||
/******************************************************************* a
|
||||
@ -1878,7 +1719,8 @@ static bool set_variable(TALLOC_CTX *mem_ctx, int parmnum, void *parm_ptr,
|
||||
}
|
||||
|
||||
|
||||
bool lp_do_global_parameter(const char *pszParmName, const char *pszParmValue)
|
||||
bool lp_do_global_parameter(struct loadparm_context *lp_ctx,
|
||||
const char *pszParmName, const char *pszParmValue)
|
||||
{
|
||||
int parmnum = map_parameter(pszParmName);
|
||||
void *parm_ptr;
|
||||
@ -1962,12 +1804,14 @@ bool lp_do_service_parameter(struct service *service,
|
||||
Process a parameter for a particular service number. If snum < 0
|
||||
then assume we are in the globals.
|
||||
***************************************************************************/
|
||||
bool lp_do_parameter(int snum, const char *pszParmName, const char *pszParmValue)
|
||||
bool lp_do_parameter(struct service *service, const char *pszParmName,
|
||||
const char *pszParmValue)
|
||||
{
|
||||
if (snum < 0) {
|
||||
return lp_do_global_parameter(pszParmName, pszParmValue);
|
||||
if (service == NULL) {
|
||||
return lp_do_global_parameter(&loadparm, pszParmName,
|
||||
pszParmValue);
|
||||
} else {
|
||||
return lp_do_service_parameter(loadparm.ServicePtrs[snum],
|
||||
return lp_do_service_parameter(service,
|
||||
pszParmName, pszParmValue);
|
||||
}
|
||||
return true;
|
||||
@ -1981,7 +1825,8 @@ static bool do_parameter(const char *pszParmName, const char *pszParmValue,
|
||||
void *userdata)
|
||||
{
|
||||
if (loadparm.bInGlobalSection)
|
||||
return lp_do_global_parameter(pszParmName, pszParmValue);
|
||||
return lp_do_global_parameter(&loadparm, pszParmName,
|
||||
pszParmValue);
|
||||
else
|
||||
return lp_do_service_parameter(loadparm.currentService,
|
||||
pszParmName, pszParmValue);
|
||||
@ -1990,8 +1835,9 @@ static bool do_parameter(const char *pszParmName, const char *pszParmValue,
|
||||
/*
|
||||
variable argument do parameter
|
||||
*/
|
||||
bool lp_do_global_parameter_var(const char *pszParmName, const char *fmt, ...) PRINTF_ATTRIBUTE(2, 3);
|
||||
bool lp_do_global_parameter_var(const char *pszParmName, const char *fmt, ...)
|
||||
bool lp_do_global_parameter_var(struct loadparm_context *lp_ctx, const char *pszParmName, const char *fmt, ...) PRINTF_ATTRIBUTE(3, 4);
|
||||
bool lp_do_global_parameter_var(struct loadparm_context *lp_ctx,
|
||||
const char *pszParmName, const char *fmt, ...)
|
||||
{
|
||||
char *s;
|
||||
bool ret;
|
||||
@ -2000,7 +1846,7 @@ bool lp_do_global_parameter_var(const char *pszParmName, const char *fmt, ...)
|
||||
va_start(ap, fmt);
|
||||
s = talloc_vasprintf(NULL, fmt, ap);
|
||||
va_end(ap);
|
||||
ret = lp_do_global_parameter(pszParmName, s);
|
||||
ret = lp_do_global_parameter(lp_ctx, pszParmName, s);
|
||||
talloc_free(s);
|
||||
return ret;
|
||||
}
|
||||
@ -2032,7 +1878,7 @@ bool lp_set_cmdline(const char *pszParmName, const char *pszParmValue)
|
||||
/* reset the CMDLINE flag in case this has been called before */
|
||||
parm_table[parmnum].flags &= ~FLAG_CMDLINE;
|
||||
|
||||
if (!lp_do_parameter(-2, pszParmName, pszParmValue)) {
|
||||
if (!lp_do_parameter(NULL, pszParmName, pszParmValue)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -2455,6 +2301,168 @@ void lp_killservice(int iServiceIn)
|
||||
}
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
Initialise the global parameter structure.
|
||||
***************************************************************************/
|
||||
bool loadparm_init(struct loadparm_context *lp_ctx)
|
||||
{
|
||||
int i;
|
||||
char *myname;
|
||||
|
||||
DEBUG(3, ("Initialising global parameters\n"));
|
||||
|
||||
for (i = 0; parm_table[i].label; i++) {
|
||||
if ((parm_table[i].type == P_STRING ||
|
||||
parm_table[i].type == P_USTRING) &&
|
||||
parm_table[i].ptr &&
|
||||
!(parm_table[i].flags & FLAG_CMDLINE)) {
|
||||
string_set(talloc_autofree_context(),
|
||||
(char **)parm_table[i].ptr, "");
|
||||
}
|
||||
}
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "config file", dyn_CONFIGFILE);
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "share backend", "classic");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "server role", "standalone");
|
||||
|
||||
/* options that can be set on the command line must be initialised via
|
||||
the slower lp_do_global_parameter() to ensure that FLAG_CMDLINE is obeyed */
|
||||
#ifdef TCP_NODELAY
|
||||
lp_do_global_parameter(lp_ctx, "socket options", "TCP_NODELAY");
|
||||
#endif
|
||||
lp_do_global_parameter(lp_ctx, "workgroup", DEFAULT_WORKGROUP);
|
||||
myname = get_myname();
|
||||
lp_do_global_parameter(lp_ctx, "netbios name", myname);
|
||||
SAFE_FREE(myname);
|
||||
lp_do_global_parameter(lp_ctx, "name resolve order", "lmhosts wins host bcast");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "fstype", FSTYPE_STRING);
|
||||
lp_do_global_parameter(lp_ctx, "ntvfs handler", "unixuid default");
|
||||
lp_do_global_parameter(lp_ctx, "max connections", "-1");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "dcerpc endpoint servers", "epmapper srvsvc wkssvc rpcecho samr netlogon lsarpc spoolss drsuapi winreg dssetup unixinfo");
|
||||
lp_do_global_parameter(lp_ctx, "server services", "smb rpc nbt wrepl ldap cldap web kdc drepl winbind");
|
||||
lp_do_global_parameter(lp_ctx, "ntptr providor", "simple_ldb");
|
||||
lp_do_global_parameter(lp_ctx, "auth methods:domain controller", "anonymous sam_ignoredomain");
|
||||
lp_do_global_parameter(lp_ctx, "auth methods:member server", "anonymous sam winbind");
|
||||
lp_do_global_parameter(lp_ctx, "auth methods:standalone", "anonymous sam_ignoredomain");
|
||||
lp_do_global_parameter(lp_ctx, "private dir", dyn_PRIVATE_DIR);
|
||||
lp_do_global_parameter(lp_ctx, "sam database", "sam.ldb");
|
||||
lp_do_global_parameter(lp_ctx, "secrets database", "secrets.ldb");
|
||||
lp_do_global_parameter(lp_ctx, "spoolss database", "spoolss.ldb");
|
||||
lp_do_global_parameter(lp_ctx, "wins config database", "wins_config.ldb");
|
||||
lp_do_global_parameter(lp_ctx, "wins database", "wins.ldb");
|
||||
lp_do_global_parameter(lp_ctx, "registry:HKEY_LOCAL_MACHINE", "hklm.ldb");
|
||||
|
||||
/* This hive should be dynamically generated by Samba using
|
||||
data from the sam, but for the moment leave it in a tdb to
|
||||
keep regedt32 from popping up an annoying dialog. */
|
||||
lp_do_global_parameter(lp_ctx, "registry:HKEY_USERS", "hku.ldb");
|
||||
|
||||
/* using UTF8 by default allows us to support all chars */
|
||||
lp_do_global_parameter(lp_ctx, "unix charset", "UTF8");
|
||||
|
||||
/* Use codepage 850 as a default for the dos character set */
|
||||
lp_do_global_parameter(lp_ctx, "dos charset", "CP850");
|
||||
|
||||
/*
|
||||
* Allow the default PASSWD_CHAT to be overridden in local.h.
|
||||
*/
|
||||
lp_do_global_parameter(lp_ctx, "passwd chat", DEFAULT_PASSWD_CHAT);
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "pid directory", dyn_PIDDIR);
|
||||
lp_do_global_parameter(lp_ctx, "lock dir", dyn_LOCKDIR);
|
||||
lp_do_global_parameter(lp_ctx, "modules dir", dyn_MODULESDIR);
|
||||
lp_do_global_parameter(lp_ctx, "ncalrpc dir", dyn_NCALRPCDIR);
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "socket address", "0.0.0.0");
|
||||
lp_do_global_parameter_var(lp_ctx, "server string",
|
||||
"Samba %s", SAMBA_VERSION_STRING);
|
||||
|
||||
lp_do_global_parameter_var(lp_ctx, "announce version", "%d.%d",
|
||||
DEFAULT_MAJOR_VERSION,
|
||||
DEFAULT_MINOR_VERSION);
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "password server", "*");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "max mux", "50");
|
||||
lp_do_global_parameter(lp_ctx, "max xmit", "12288");
|
||||
lp_do_global_parameter(lp_ctx, "password level", "0");
|
||||
lp_do_global_parameter(lp_ctx, "LargeReadwrite", "True");
|
||||
lp_do_global_parameter(lp_ctx, "server min protocol", "CORE");
|
||||
lp_do_global_parameter(lp_ctx, "server max protocol", "NT1");
|
||||
lp_do_global_parameter(lp_ctx, "client min protocol", "CORE");
|
||||
lp_do_global_parameter(lp_ctx, "client max protocol", "NT1");
|
||||
lp_do_global_parameter(lp_ctx, "security", "USER");
|
||||
lp_do_global_parameter(lp_ctx, "paranoid server security", "True");
|
||||
lp_do_global_parameter(lp_ctx, "EncryptPasswords", "True");
|
||||
lp_do_global_parameter(lp_ctx, "ReadRaw", "True");
|
||||
lp_do_global_parameter(lp_ctx, "WriteRaw", "True");
|
||||
lp_do_global_parameter(lp_ctx, "NullPasswords", "False");
|
||||
lp_do_global_parameter(lp_ctx, "ObeyPamRestrictions", "False");
|
||||
lp_do_global_parameter(lp_ctx, "announce as", "NT SERVER");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "TimeServer", "False");
|
||||
lp_do_global_parameter(lp_ctx, "BindInterfacesOnly", "False");
|
||||
lp_do_global_parameter(lp_ctx, "Unicode", "True");
|
||||
lp_do_global_parameter(lp_ctx, "ClientLanManAuth", "True");
|
||||
lp_do_global_parameter(lp_ctx, "LanmanAuth", "True");
|
||||
lp_do_global_parameter(lp_ctx, "NTLMAuth", "True");
|
||||
lp_do_global_parameter(lp_ctx, "client use spnego principal", "False");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "UnixExtensions", "False");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "PreferredMaster", "Auto");
|
||||
lp_do_global_parameter(lp_ctx, "LocalMaster", "True");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "wins support", "False");
|
||||
lp_do_global_parameter(lp_ctx, "dns proxy", "True");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "winbind separator", "\\");
|
||||
lp_do_global_parameter(lp_ctx, "winbind sealed pipes", "True");
|
||||
lp_do_global_parameter(lp_ctx, "winbindd socket directory", dyn_WINBINDD_SOCKET_DIR);
|
||||
lp_do_global_parameter(lp_ctx, "template shell", "/bin/false");
|
||||
lp_do_global_parameter(lp_ctx, "template homedir", "/home/%WORKGROUP%/%ACCOUNTNAME%");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "client signing", "Yes");
|
||||
lp_do_global_parameter(lp_ctx, "server signing", "auto");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "use spnego", "True");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "smb ports", "445 139");
|
||||
lp_do_global_parameter(lp_ctx, "nbt port", "137");
|
||||
lp_do_global_parameter(lp_ctx, "dgram port", "138");
|
||||
lp_do_global_parameter(lp_ctx, "cldap port", "389");
|
||||
lp_do_global_parameter(lp_ctx, "krb5 port", "88");
|
||||
lp_do_global_parameter(lp_ctx, "kpasswd port", "464");
|
||||
lp_do_global_parameter(lp_ctx, "web port", "901");
|
||||
lp_do_global_parameter(lp_ctx, "web application directory", dyn_WEBAPPSDIR);
|
||||
lp_do_global_parameter(lp_ctx, "jsonrpc services directory", dyn_SERVICESDIR);
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "nt status support", "True");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "max wins ttl", "518400"); /* 6 days */
|
||||
lp_do_global_parameter(lp_ctx, "min wins ttl", "10");
|
||||
|
||||
lp_do_global_parameter(lp_ctx, "tls enabled", "True");
|
||||
lp_do_global_parameter(lp_ctx, "tls keyfile", "tls/key.pem");
|
||||
lp_do_global_parameter(lp_ctx, "tls certfile", "tls/cert.pem");
|
||||
lp_do_global_parameter(lp_ctx, "tls cafile", "tls/ca.pem");
|
||||
lp_do_global_parameter_var(lp_ctx, "js include", "%s", dyn_JSDIR);
|
||||
lp_do_global_parameter_var(lp_ctx, "setup directory", "%s",
|
||||
dyn_SETUPDIR);
|
||||
|
||||
for (i = 0; parm_table[i].label; i++) {
|
||||
if (!(parm_table[i].flags & FLAG_CMDLINE)) {
|
||||
parm_table[i].flags |= FLAG_DEFAULT;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
Load the services array from the services file. Return True on success,
|
||||
False on failure.
|
||||
@ -2468,8 +2476,6 @@ bool lp_load(void)
|
||||
|
||||
bRetval = false;
|
||||
|
||||
loadparm.bInGlobalSection = true;
|
||||
|
||||
if (loadparm.Globals.param_opt != NULL) {
|
||||
struct param_opt *next;
|
||||
for (data=loadparm.Globals.param_opt; data; data=next) {
|
||||
@ -2479,9 +2485,11 @@ bool lp_load(void)
|
||||
talloc_free(data);
|
||||
}
|
||||
}
|
||||
|
||||
init_globals();
|
||||
|
||||
if (!loadparm_init(&loadparm))
|
||||
return false;
|
||||
|
||||
loadparm.bInGlobalSection = true;
|
||||
n2 = standard_sub_basic(talloc_autofree_context(), lp_configfile());
|
||||
DEBUG(2, ("lp_load: refreshing parameters from %s\n", n2));
|
||||
|
||||
@ -2505,7 +2513,7 @@ bool lp_load(void)
|
||||
bLoaded = true;
|
||||
|
||||
if (!loadparm.Globals.szWINSservers && loadparm.Globals.bWINSsupport) {
|
||||
lp_do_parameter(-1, "wins server", "127.0.0.1");
|
||||
lp_do_parameter(NULL, "wins server", "127.0.0.1");
|
||||
}
|
||||
|
||||
init_iconv();
|
||||
|
@ -57,6 +57,7 @@ enum announce_as {/* Types of machine we can announce as. */
|
||||
ANNOUNCE_AS_NT_WORKSTATION=4
|
||||
};
|
||||
|
||||
struct loadparm_context;
|
||||
struct service;
|
||||
|
||||
#include "param/proto.h"
|
||||
|
Loading…
Reference in New Issue
Block a user