summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDerrell Lipman <derrell@samba.org>2006-01-28 22:53:04 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:06:18 -0500
commit9c15bd311db76885b27f30ba92d885833f668550 (patch)
tree20ec704d6d0caa99936d86d32869917592be3b8d
parentba611cb0368629dd7b98c20ed88e9394be0c29e5 (diff)
downloadsamba-9c15bd311db76885b27f30ba92d885833f668550.tar.gz
samba-9c15bd311db76885b27f30ba92d885833f668550.tar.bz2
samba-9c15bd311db76885b27f30ba92d885833f668550.zip
r13212: r12414@cabra: derrell | 2006-01-28 17:52:17 -0500
lp_load() could not be called multiple times to modify parameter settings based on reading from multiple configuration settings. Each time, it initialized all of the settings back to their defaults before reading the specified configuration file. This patch adds a parameter to lp_load() specifying whether the settings should be initialized. It does, however, still force the settings to be initialized the first time, even if the request was to not initialize them. (Not doing so could wreak havoc due to uninitialized values.) (This used to be commit f2a24de769d1b2266e576597c57a8e3b1e2a2b51)
-rw-r--r--source3/client/client.c2
-rw-r--r--source3/client/smbctool.c2
-rw-r--r--source3/client/smbmount.c2
-rw-r--r--source3/client/smbspool.c2
-rw-r--r--source3/libsmb/libsmbclient.c6
-rw-r--r--source3/nmbd/nmbd.c2
-rw-r--r--source3/nsswitch/wbinfo.c2
-rw-r--r--source3/nsswitch/winbindd.c2
-rw-r--r--source3/nsswitch/wins.c2
-rw-r--r--source3/pam_smbpass/support.c2
-rw-r--r--source3/param/loadparm.c17
-rw-r--r--source3/python/py_common.c2
-rw-r--r--source3/rpcclient/rpcclient.c2
-rw-r--r--source3/smbd/server.c2
-rw-r--r--source3/smbwrapper/smbw.c2
-rw-r--r--source3/torture/locktest.c2
-rw-r--r--source3/torture/locktest2.c2
-rw-r--r--source3/torture/masktest.c2
-rw-r--r--source3/torture/msgtest.c2
-rw-r--r--source3/torture/rpctorture.c2
-rw-r--r--source3/torture/t_push_ucs2.c2
-rw-r--r--source3/torture/t_strcmp.c2
-rw-r--r--source3/torture/t_strstr.c2
-rw-r--r--source3/torture/torture.c2
-rw-r--r--source3/torture/vfstest.c4
-rw-r--r--source3/utils/eventlogadm.c2
-rw-r--r--source3/utils/net.c2
-rw-r--r--source3/utils/nmblookup.c2
-rw-r--r--source3/utils/ntlm_auth.c2
-rw-r--r--source3/utils/pdbedit.c2
-rw-r--r--source3/utils/smbcacls.c2
-rw-r--r--source3/utils/smbcontrol.c2
-rw-r--r--source3/utils/smbcquotas.c2
-rw-r--r--source3/utils/smbfilter.c2
-rw-r--r--source3/utils/smbpasswd.c2
-rw-r--r--source3/utils/smbtree.c2
-rw-r--r--source3/utils/smbw_sample.c2
-rw-r--r--source3/utils/status.c2
-rw-r--r--source3/utils/testparm.c2
-rw-r--r--source3/web/swat.c2
-rw-r--r--source3/wrepld/server.c2
41 files changed, 56 insertions, 47 deletions
diff --git a/source3/client/client.c b/source3/client/client.c
index 7ac64970f8..403074b22b 100644
--- a/source3/client/client.c
+++ b/source3/client/client.c
@@ -3449,7 +3449,7 @@ static int do_message_op(void)
if ( override_logfile )
setup_logging( lp_logfile(), False );
- if (!lp_load(dyn_CONFIGFILE,True,False,False)) {
+ if (!lp_load(dyn_CONFIGFILE,True,False,False,True)) {
fprintf(stderr, "%s: Can't load %s - run testparm to debug it\n",
argv[0], dyn_CONFIGFILE);
}
diff --git a/source3/client/smbctool.c b/source3/client/smbctool.c
index db938dd809..439345ca6d 100644
--- a/source3/client/smbctool.c
+++ b/source3/client/smbctool.c
@@ -3654,7 +3654,7 @@ static int do_message_op(void)
if ( override_logfile )
setup_logging( lp_logfile(), False );
- if (!lp_load(dyn_CONFIGFILE,True,False,False)) {
+ if (!lp_load(dyn_CONFIGFILE,True,False,False,True)) {
fprintf(stderr, "%s: Can't load %s - run testparm to debug it\n",
argv[0], dyn_CONFIGFILE);
}
diff --git a/source3/client/smbmount.c b/source3/client/smbmount.c
index d8254ef23a..21882ab2e9 100644
--- a/source3/client/smbmount.c
+++ b/source3/client/smbmount.c
@@ -910,7 +910,7 @@ static void parse_mount_smb(int argc, char **argv)
pstrcpy(username,getenv("LOGNAME"));
}
- if (!lp_load(dyn_CONFIGFILE,True,False,False)) {
+ if (!lp_load(dyn_CONFIGFILE,True,False,False,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n",
dyn_CONFIGFILE);
}
diff --git a/source3/client/smbspool.c b/source3/client/smbspool.c
index 7fe918413d..d7a02b76f9 100644
--- a/source3/client/smbspool.c
+++ b/source3/client/smbspool.c
@@ -214,7 +214,7 @@ static int smb_print(struct cli_state *, char *, FILE *);
in_client = True; /* Make sure that we tell lp_load we are */
- if (!lp_load(dyn_CONFIGFILE, True, False, False))
+ if (!lp_load(dyn_CONFIGFILE, True, False, False, True))
{
fprintf(stderr, "ERROR: Can't load %s - run testparm to debug it\n", dyn_CONFIGFILE);
return (1);
diff --git a/source3/libsmb/libsmbclient.c b/source3/libsmb/libsmbclient.c
index 51f94e42e3..fda619c529 100644
--- a/source3/libsmb/libsmbclient.c
+++ b/source3/libsmb/libsmbclient.c
@@ -6025,7 +6025,7 @@ smbc_init_context(SMBCCTX *context)
home = getenv("HOME");
if (home) {
slprintf(conf, sizeof(conf), "%s/.smb/smb.conf", home);
- if (lp_load(conf, True, False, False)) {
+ if (lp_load(conf, True, False, False, True)) {
conf_loaded = True;
} else {
DEBUG(5, ("Could not load config file: %s\n",
@@ -6041,7 +6041,7 @@ smbc_init_context(SMBCCTX *context)
* defaults ...
*/
- if (!lp_load(dyn_CONFIGFILE, True, False, False)) {
+ if (!lp_load(dyn_CONFIGFILE, True, False, False, False)) {
DEBUG(5, ("Could not load config file: %s\n",
dyn_CONFIGFILE));
} else if (home) {
@@ -6052,7 +6052,7 @@ smbc_init_context(SMBCCTX *context)
*/
slprintf(conf, sizeof(conf),
"%s/.smb/smb.conf.append", home);
- if (!lp_load(conf, True, False, False)) {
+ if (!lp_load(conf, True, False, False, False)) {
DEBUG(10,
("Could not append config file: "
"%s\n",
diff --git a/source3/nmbd/nmbd.c b/source3/nmbd/nmbd.c
index ea7e9a5288..f69cc32ff6 100644
--- a/source3/nmbd/nmbd.c
+++ b/source3/nmbd/nmbd.c
@@ -291,7 +291,7 @@ static BOOL reload_nmbd_services(BOOL test)
if ( test && !lp_file_list_changed() )
return(True);
- ret = lp_load( dyn_CONFIGFILE, True , False, False);
+ ret = lp_load( dyn_CONFIGFILE, True , False, False, True);
/* perhaps the config filename is now set */
if ( !test ) {
diff --git a/source3/nsswitch/wbinfo.c b/source3/nsswitch/wbinfo.c
index f3819b6f51..b7c3b0a98c 100644
--- a/source3/nsswitch/wbinfo.c
+++ b/source3/nsswitch/wbinfo.c
@@ -1024,7 +1024,7 @@ int main(int argc, char **argv)
/* Samba client initialisation */
load_case_tables();
- if (!lp_load(dyn_CONFIGFILE, True, False, False)) {
+ if (!lp_load(dyn_CONFIGFILE, True, False, False, True)) {
d_fprintf(stderr, "wbinfo: error opening config file %s. Error was %s\n",
dyn_CONFIGFILE, strerror(errno));
exit(1);
diff --git a/source3/nsswitch/winbindd.c b/source3/nsswitch/winbindd.c
index e9b9ed42c4..bbcf2b5e88 100644
--- a/source3/nsswitch/winbindd.c
+++ b/source3/nsswitch/winbindd.c
@@ -47,7 +47,7 @@ static BOOL reload_services_file(void)
}
reopen_logs();
- ret = lp_load(dyn_CONFIGFILE,False,False,True);
+ ret = lp_load(dyn_CONFIGFILE,False,False,True,True);
reopen_logs();
load_interfaces();
diff --git a/source3/nsswitch/wins.c b/source3/nsswitch/wins.c
index ac5b0f1157..f871a53982 100644
--- a/source3/nsswitch/wins.c
+++ b/source3/nsswitch/wins.c
@@ -80,7 +80,7 @@ static void nss_wins_init(void)
TimeInit();
setup_logging("nss_wins",False);
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
}
diff --git a/source3/pam_smbpass/support.c b/source3/pam_smbpass/support.c
index 82d51103d2..3f2c638816 100644
--- a/source3/pam_smbpass/support.c
+++ b/source3/pam_smbpass/support.c
@@ -167,7 +167,7 @@ int set_ctrl( int flags, int argc, const char **argv )
/* Read some options from the Samba config. Can be overridden by
the PAM config. */
- if(lp_load(service_file,True,False,False) == False) {
+ if(lp_load(service_file,True,False,False,True) == False) {
_log_err( LOG_ERR, "Error loading service file %s", service_file );
}
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index 83a5b2fc3c..a2aa851b09 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -1354,11 +1354,17 @@ static void init_printer_values(service *pService)
Initialise the global parameter structure.
***************************************************************************/
-static void init_globals(void)
+static void init_globals(BOOL first_time_only)
{
static BOOL done_init = False;
pstring s;
+ /* If requested to initialize only once and we've already done it... */
+ if (first_time_only && done_init) {
+ /* ... then we have nothing more to do */
+ return;
+ }
+
if (!done_init) {
int i;
@@ -4188,8 +4194,11 @@ static void set_allowed_client_auth(void)
False on failure.
***************************************************************************/
-BOOL lp_load(const char *pszFname, BOOL global_only, BOOL save_defaults,
- BOOL add_ipc)
+BOOL lp_load(const char *pszFname,
+ BOOL global_only,
+ BOOL save_defaults,
+ BOOL add_ipc,
+ BOOL initialize_globals)
{
pstring n2;
BOOL bRetval;
@@ -4208,7 +4217,7 @@ BOOL lp_load(const char *pszFname, BOOL global_only, BOOL save_defaults,
bInGlobalSection = True;
bGlobalOnly = global_only;
- init_globals();
+ init_globals(! initialize_globals);
debug_init();
if (save_defaults) {
diff --git a/source3/python/py_common.c b/source3/python/py_common.c
index 66f35759c3..70d478b979 100644
--- a/source3/python/py_common.c
+++ b/source3/python/py_common.c
@@ -47,7 +47,7 @@ void py_samba_init(void)
/* Load configuration file */
- if (!lp_load(dyn_CONFIGFILE, True, False, False))
+ if (!lp_load(dyn_CONFIGFILE, True, False, False, True))
fprintf(stderr, "Can't load %s\n", dyn_CONFIGFILE);
/* Misc other stuff */
diff --git a/source3/rpcclient/rpcclient.c b/source3/rpcclient/rpcclient.c
index 5bca67d7a6..5e66b18263 100644
--- a/source3/rpcclient/rpcclient.c
+++ b/source3/rpcclient/rpcclient.c
@@ -757,7 +757,7 @@ out_free:
/* Load smb.conf file */
- if (!lp_load(dyn_CONFIGFILE,True,False,False))
+ if (!lp_load(dyn_CONFIGFILE,True,False,False,True))
fprintf(stderr, "Can't load %s\n", dyn_CONFIGFILE);
/*
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index 620bf3ebbd..3e970ec16c 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -529,7 +529,7 @@ BOOL reload_services(BOOL test)
lp_killunused(conn_snum_used);
- ret = lp_load(dyn_CONFIGFILE, False, False, True);
+ ret = lp_load(dyn_CONFIGFILE, False, False, True, True);
reload_printers();
diff --git a/source3/smbwrapper/smbw.c b/source3/smbwrapper/smbw.c
index edcc7a5c2f..d4a5b51af4 100644
--- a/source3/smbwrapper/smbw.c
+++ b/source3/smbwrapper/smbw.c
@@ -76,7 +76,7 @@ void smbw_init(void)
pstrcpy(dyn_CONFIGFILE, p);
}
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
if (!init_names())
exit(1);
diff --git a/source3/torture/locktest.c b/source3/torture/locktest.c
index c8336ebaf6..913df885ba 100644
--- a/source3/torture/locktest.c
+++ b/source3/torture/locktest.c
@@ -586,7 +586,7 @@ static void usage(void)
argc -= NSERVERS;
argv += NSERVERS;
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
if (getenv("USER")) {
diff --git a/source3/torture/locktest2.c b/source3/torture/locktest2.c
index fc180bfafe..519acebe8e 100644
--- a/source3/torture/locktest2.c
+++ b/source3/torture/locktest2.c
@@ -498,7 +498,7 @@ static void usage(void)
argc -= 4;
argv += 4;
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
if (getenv("USER")) {
diff --git a/source3/torture/masktest.c b/source3/torture/masktest.c
index 07bfe69121..ffc9a20e71 100644
--- a/source3/torture/masktest.c
+++ b/source3/torture/masktest.c
@@ -454,7 +454,7 @@ static void usage(void)
argc -= 1;
argv += 1;
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
if (getenv("USER")) {
diff --git a/source3/torture/msgtest.c b/source3/torture/msgtest.c
index d691ab32f1..f7c47ddbbf 100644
--- a/source3/torture/msgtest.c
+++ b/source3/torture/msgtest.c
@@ -41,7 +41,7 @@ void pong_message(int msg_type, struct process_id src, void *buf, size_t len)
setup_logging(argv[0],True);
- lp_load(dyn_CONFIGFILE,False,False,False);
+ lp_load(dyn_CONFIGFILE,False,False,False,True);
message_init();
diff --git a/source3/torture/rpctorture.c b/source3/torture/rpctorture.c
index 28067c1a0a..d69cc8eb8d 100644
--- a/source3/torture/rpctorture.c
+++ b/source3/torture/rpctorture.c
@@ -242,7 +242,7 @@ enum client_action
*term_code = 0;
#endif /* KANJI */
- if (!lp_load(dyn_CONFIGFILE,True, False, False))
+ if (!lp_load(dyn_CONFIGFILE,True, False, False, True))
{
fprintf(stderr, "Can't load %s - run testparm to debug it\n", dyn_CONFIGFILE);
}
diff --git a/source3/torture/t_push_ucs2.c b/source3/torture/t_push_ucs2.c
index 8bfc6f7ad9..8d327acfa5 100644
--- a/source3/torture/t_push_ucs2.c
+++ b/source3/torture/t_push_ucs2.c
@@ -33,7 +33,7 @@ int main(int argc, char *argv[])
int count = 1;
/* Needed to initialize character set */
- lp_load("/dev/null", True, False, False);
+ lp_load("/dev/null", True, False, False, True);
if (argc < 2) {
fprintf(stderr, "usage: %s STRING1 [COUNT]\n"
diff --git a/source3/torture/t_strcmp.c b/source3/torture/t_strcmp.c
index bc8640ee55..318423b8be 100644
--- a/source3/torture/t_strcmp.c
+++ b/source3/torture/t_strcmp.c
@@ -12,7 +12,7 @@ int main(int argc, char *argv[])
int iters = 1;
/* Needed to initialize character set */
- lp_load("/dev/null", True, False, False);
+ lp_load("/dev/null", True, False, False, True);
if (argc < 3) {
fprintf(stderr, "usage: %s STRING1 STRING2 [ITERS]\n"
diff --git a/source3/torture/t_strstr.c b/source3/torture/t_strstr.c
index 7b928fb26b..49180b219f 100644
--- a/source3/torture/t_strstr.c
+++ b/source3/torture/t_strstr.c
@@ -14,7 +14,7 @@ int main(int argc, char *argv[])
const char *ret = NULL;
/* Needed to initialize character set */
- lp_load("/dev/null", True, False, False);
+ lp_load("/dev/null", True, False, False, True);
if (argc < 3) {
fprintf(stderr, "usage: %s STRING1 STRING2 [ITERS]\n"
diff --git a/source3/torture/torture.c b/source3/torture/torture.c
index e995c3cc58..0b3bfc18f4 100644
--- a/source3/torture/torture.c
+++ b/source3/torture/torture.c
@@ -4916,7 +4916,7 @@ static void usage(void)
load_case_tables();
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
if (argc < 2) {
diff --git a/source3/torture/vfstest.c b/source3/torture/vfstest.c
index 1914a4acb5..023e656c67 100644
--- a/source3/torture/vfstest.c
+++ b/source3/torture/vfstest.c
@@ -113,7 +113,7 @@ static NTSTATUS cmd_conf(struct vfs_state *vfs, TALLOC_CTX *mem_ctx,
return NT_STATUS_OK;
}
- if (!lp_load(argv[1], False, True, False)) {
+ if (!lp_load(argv[1], False, True, False, True)) {
printf("Error loading \"%s\"\n", argv[1]);
return NT_STATUS_OK;
}
@@ -448,7 +448,7 @@ BOOL reload_services(BOOL test)
lp_killunused(conn_snum_used);
- ret = lp_load(dyn_CONFIGFILE, False, False, True);
+ ret = lp_load(dyn_CONFIGFILE, False, False, True, True);
/* perhaps the config filename is now set */
if (!test)
diff --git a/source3/utils/eventlogadm.c b/source3/utils/eventlogadm.c
index eef7cde377..8cf79fcf14 100644
--- a/source3/utils/eventlogadm.c
+++ b/source3/utils/eventlogadm.c
@@ -170,7 +170,7 @@ int main( int argc, char *argv[] )
opt_debug = 0; /* todo set this from getopts */
- lp_load( dyn_CONFIGFILE, True, False, False );
+ lp_load( dyn_CONFIGFILE, True, False, False, True);
exename = argv[0];
srcname = NULL;
diff --git a/source3/utils/net.c b/source3/utils/net.c
index a2a9ac6a39..25e10c6a31 100644
--- a/source3/utils/net.c
+++ b/source3/utils/net.c
@@ -825,7 +825,7 @@ static struct functable net_func[] = {
* set by cmdline arg or remain default (0)
*/
AllowDebugChange = False;
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
argv_new = (const char **)poptGetArgs(pc);
diff --git a/source3/utils/nmblookup.c b/source3/utils/nmblookup.c
index e88d786290..12ac1beb7b 100644
--- a/source3/utils/nmblookup.c
+++ b/source3/utils/nmblookup.c
@@ -248,7 +248,7 @@ int main(int argc,char *argv[])
exit(1);
}
- if (!lp_load(dyn_CONFIGFILE,True,False,False)) {
+ if (!lp_load(dyn_CONFIGFILE,True,False,False,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n", dyn_CONFIGFILE);
}
diff --git a/source3/utils/ntlm_auth.c b/source3/utils/ntlm_auth.c
index 65dbfb7165..4759aec0cc 100644
--- a/source3/utils/ntlm_auth.c
+++ b/source3/utils/ntlm_auth.c
@@ -1758,7 +1758,7 @@ enum {
/* Samba client initialisation */
- if (!lp_load(dyn_CONFIGFILE, True, False, False)) {
+ if (!lp_load(dyn_CONFIGFILE, True, False, False, True)) {
d_fprintf(stderr, "ntlm_auth: error opening config file %s. Error was %s\n",
dyn_CONFIGFILE, strerror(errno));
exit(1);
diff --git a/source3/utils/pdbedit.c b/source3/utils/pdbedit.c
index 53d3b17d06..f41bbb8caa 100644
--- a/source3/utils/pdbedit.c
+++ b/source3/utils/pdbedit.c
@@ -795,7 +795,7 @@ int main (int argc, char **argv)
if (user_name == NULL)
user_name = poptGetArg(pc);
- if (!lp_load(dyn_CONFIGFILE,True,False,False)) {
+ if (!lp_load(dyn_CONFIGFILE,True,False,False,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n", dyn_CONFIGFILE);
exit(1);
}
diff --git a/source3/utils/smbcacls.c b/source3/utils/smbcacls.c
index cbbd7adaab..26362c6270 100644
--- a/source3/utils/smbcacls.c
+++ b/source3/utils/smbcacls.c
@@ -830,7 +830,7 @@ static struct cli_state *connect_one(const char *share)
setlinebuf(stdout);
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
pc = poptGetContext("smbcacls", argc, argv, long_options, 0);
diff --git a/source3/utils/smbcontrol.c b/source3/utils/smbcontrol.c
index b8f7c2f2b5..a4d2766b13 100644
--- a/source3/utils/smbcontrol.c
+++ b/source3/utils/smbcontrol.c
@@ -827,7 +827,7 @@ int main(int argc, const char **argv)
if (argc == 1)
usage(&pc);
- lp_load(dyn_CONFIGFILE,False,False,False);
+ lp_load(dyn_CONFIGFILE,False,False,False,True);
/* Need to invert sense of return code -- samba
* routines mostly return True==1 for success, but
diff --git a/source3/utils/smbcquotas.c b/source3/utils/smbcquotas.c
index f8e3313155..b1a14685f5 100644
--- a/source3/utils/smbcquotas.c
+++ b/source3/utils/smbcquotas.c
@@ -435,7 +435,7 @@ FSQFLAGS:QUOTA_ENABLED/DENY_DISK/LOG_SOFTLIMIT/LOG_HARD_LIMIT", "SETSTRING" },
fault_setup(NULL);
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
pc = poptGetContext("smbcquotas", argc, argv, long_options, 0);
diff --git a/source3/utils/smbfilter.c b/source3/utils/smbfilter.c
index 3665647905..97d22230c4 100644
--- a/source3/utils/smbfilter.c
+++ b/source3/utils/smbfilter.c
@@ -236,7 +236,7 @@ int main(int argc, char *argv[])
netbiosname = argv[2];
}
- if (!lp_load(configfile,True,False,False)) {
+ if (!lp_load(configfile,True,False,False,True)) {
d_printf("Unable to load config file\n");
}
diff --git a/source3/utils/smbpasswd.c b/source3/utils/smbpasswd.c
index 29189c5feb..7eb11137d7 100644
--- a/source3/utils/smbpasswd.c
+++ b/source3/utils/smbpasswd.c
@@ -187,7 +187,7 @@ static int process_options(int argc, char **argv, int local_flags)
usage();
}
- if (!lp_load(configfile,True,False,False)) {
+ if (!lp_load(configfile,True,False,False,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n",
dyn_CONFIGFILE);
exit(1);
diff --git a/source3/utils/smbtree.c b/source3/utils/smbtree.c
index 3755b7f8e5..853a46f379 100644
--- a/source3/utils/smbtree.c
+++ b/source3/utils/smbtree.c
@@ -216,7 +216,7 @@ static BOOL print_tree(struct user_auth_info *user_info)
while(poptGetNextOpt(pc) != -1);
poptFreeContext(pc);
- lp_load(dyn_CONFIGFILE,True,False,False);
+ lp_load(dyn_CONFIGFILE,True,False,False,True);
load_interfaces();
/* Parse command line args */
diff --git a/source3/utils/smbw_sample.c b/source3/utils/smbw_sample.c
index 5cd792df7a..ba78eb22fc 100644
--- a/source3/utils/smbw_sample.c
+++ b/source3/utils/smbw_sample.c
@@ -33,7 +33,7 @@ int main(int argc, char *argv[])
extern int optind;
char *path;
- lp_load(dyn_CONFIGFILE,1,0,0);
+ lp_load(dyn_CONFIGFILE,1,0,0,1);
smbw_setup_shared();
while ((opt = getopt(argc, argv, "W:U:R:d:P:l:hL:")) != EOF) {
diff --git a/source3/utils/status.c b/source3/utils/status.c
index eeaf83d177..2aed68be89 100644
--- a/source3/utils/status.c
+++ b/source3/utils/status.c
@@ -648,7 +648,7 @@ static int traverse_sessionid(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf, vo
d_printf("using configfile = %s\n", dyn_CONFIGFILE);
}
- if (!lp_load(dyn_CONFIGFILE,False,False,False)) {
+ if (!lp_load(dyn_CONFIGFILE,False,False,False,True)) {
fprintf(stderr, "Can't load %s - run testparm to debug it\n", dyn_CONFIGFILE);
return (-1);
}
diff --git a/source3/utils/testparm.c b/source3/utils/testparm.c
index 11ce960e55..8b9ff4710e 100644
--- a/source3/utils/testparm.c
+++ b/source3/utils/testparm.c
@@ -266,7 +266,7 @@ via the %%o substitution. With encrypted passwords this is not possible.\n", lp_
fprintf(stderr,"Load smb config files from %s\n",config_file);
- if (!lp_load(config_file,False,True,False)) {
+ if (!lp_load(config_file,False,True,False,True)) {
fprintf(stderr,"Error loading services.\n");
return(1);
}
diff --git a/source3/web/swat.c b/source3/web/swat.c
index 372d473bdb..63253e41c4 100644
--- a/source3/web/swat.c
+++ b/source3/web/swat.c
@@ -422,7 +422,7 @@ static void show_parameters(int snum, int allparameters, unsigned int parm_filte
static BOOL load_config(BOOL save_def)
{
lp_resetnumservices();
- return lp_load(dyn_CONFIGFILE,False,save_def,False);
+ return lp_load(dyn_CONFIGFILE,False,save_def,False,True);
}
/****************************************************************************
diff --git a/source3/wrepld/server.c b/source3/wrepld/server.c
index 5ac78a2474..754bad01b0 100644
--- a/source3/wrepld/server.c
+++ b/source3/wrepld/server.c
@@ -64,7 +64,7 @@ BOOL reload_services(BOOL test)
if (test && !lp_file_list_changed())
return(True);
- ret = lp_load(dyn_CONFIGFILE,False,False,True);
+ ret = lp_load(dyn_CONFIGFILE,False,False,True,True);
/* perhaps the config filename is now set */