From c8f28c92a7a96e278031b85f04b4671206bf3502 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Wed, 28 Dec 2005 22:48:54 +0000 Subject: r12555: Fix more load_case_table swegfaults. Arggg. What I'd give for a global constructor... Jeremy. (This used to be commit c970d7d0a5ba225465dfb0980989b8817b17c643) --- source3/client/client.c | 1 + source3/nsswitch/wbinfo.c | 1 + source3/utils/eventlogadm.c | 2 ++ source3/utils/ntlm_auth.c | 1 + source3/utils/pdbedit.c | 2 ++ source3/utils/smbcacls.c | 2 ++ source3/utils/smbcquotas.c | 2 ++ source3/utils/smbget.c | 2 ++ source3/utils/smbtree.c | 1 + source3/utils/status.c | 2 ++ source3/utils/testparm.c | 2 ++ 11 files changed, 18 insertions(+) (limited to 'source3') diff --git a/source3/client/client.c b/source3/client/client.c index f95bbea671..7ac64970f8 100644 --- a/source3/client/client.c +++ b/source3/client/client.c @@ -3326,6 +3326,7 @@ static int do_message_op(void) POPT_TABLEEND }; + load_case_tables(); #ifdef KANJI pstrcpy(term_code, KANJI); diff --git a/source3/nsswitch/wbinfo.c b/source3/nsswitch/wbinfo.c index c55f4bb431..f3819b6f51 100644 --- a/source3/nsswitch/wbinfo.c +++ b/source3/nsswitch/wbinfo.c @@ -1022,6 +1022,7 @@ int main(int argc, char **argv) }; /* Samba client initialisation */ + load_case_tables(); if (!lp_load(dyn_CONFIGFILE, True, False, False)) { d_fprintf(stderr, "wbinfo: error opening config file %s. Error was %s\n", diff --git a/source3/utils/eventlogadm.c b/source3/utils/eventlogadm.c index a0fc4bcf9d..eef7cde377 100644 --- a/source3/utils/eventlogadm.c +++ b/source3/utils/eventlogadm.c @@ -166,6 +166,8 @@ int main( int argc, char *argv[] ) fstring opname; + load_case_tables(); + opt_debug = 0; /* todo set this from getopts */ lp_load( dyn_CONFIGFILE, True, False, False ); diff --git a/source3/utils/ntlm_auth.c b/source3/utils/ntlm_auth.c index 433ba06982..65dbfb7165 100644 --- a/source3/utils/ntlm_auth.c +++ b/source3/utils/ntlm_auth.c @@ -1752,6 +1752,7 @@ enum { }; /* Samba client initialisation */ + load_case_tables(); dbf = x_stderr; diff --git a/source3/utils/pdbedit.c b/source3/utils/pdbedit.c index 9c292bd212..ddf0eea169 100644 --- a/source3/utils/pdbedit.c +++ b/source3/utils/pdbedit.c @@ -775,6 +775,8 @@ int main (int argc, char **argv) POPT_TABLEEND }; + load_case_tables(); + setup_logging("pdbedit", True); pc = poptGetContext(NULL, argc, (const char **) argv, long_options, diff --git a/source3/utils/smbcacls.c b/source3/utils/smbcacls.c index fd1d3cbf89..cbbd7adaab 100644 --- a/source3/utils/smbcacls.c +++ b/source3/utils/smbcacls.c @@ -818,6 +818,8 @@ static struct cli_state *connect_one(const char *share) struct cli_state *cli; + load_case_tables(); + ctx=talloc_init("main"); /* set default debug level to 1 regardless of what smb.conf sets */ diff --git a/source3/utils/smbcquotas.c b/source3/utils/smbcquotas.c index be7c2c64e6..f8e3313155 100644 --- a/source3/utils/smbcquotas.c +++ b/source3/utils/smbcquotas.c @@ -421,6 +421,8 @@ FSQFLAGS:QUOTA_ENABLED/DENY_DISK/LOG_SOFTLIMIT/LOG_HARD_LIMIT", "SETSTRING" }, { NULL } }; + load_case_tables(); + ZERO_STRUCT(qt); /* set default debug level to 1 regardless of what smb.conf sets */ diff --git a/source3/utils/smbget.c b/source3/utils/smbget.c index 9d44017bd3..4a2670e0c1 100644 --- a/source3/utils/smbget.c +++ b/source3/utils/smbget.c @@ -544,6 +544,8 @@ int main(int argc, const char **argv) }; poptContext pc; + load_case_tables(); + /* only read rcfile if it exists */ asprintf(&rcfile, "%s/.smbgetrc", getenv("HOME")); if(access(rcfile, F_OK) == 0) diff --git a/source3/utils/smbtree.c b/source3/utils/smbtree.c index 00f6a74f2f..3755b7f8e5 100644 --- a/source3/utils/smbtree.c +++ b/source3/utils/smbtree.c @@ -203,6 +203,7 @@ static BOOL print_tree(struct user_auth_info *user_info) poptContext pc; /* Initialise samba stuff */ + load_case_tables(); setlinebuf(stdout); diff --git a/source3/utils/status.c b/source3/utils/status.c index 2c5756106a..f19a217aa6 100644 --- a/source3/utils/status.c +++ b/source3/utils/status.c @@ -613,6 +613,8 @@ static int traverse_sessionid(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf, vo POPT_TABLEEND }; + load_case_tables(); + setup_logging(argv[0],True); dbf = x_stderr; diff --git a/source3/utils/testparm.c b/source3/utils/testparm.c index e097ea34d6..f5c835725a 100644 --- a/source3/utils/testparm.c +++ b/source3/utils/testparm.c @@ -230,6 +230,8 @@ via the %%o substitution. With encrypted passwords this is not possible.\n", lp_ POPT_TABLEEND }; + load_case_tables(); + pc = poptGetContext(NULL, argc, argv, long_options, POPT_CONTEXT_KEEP_FIRST); poptSetOtherOptionHelp(pc, "[OPTION...] [host-name] [host-ip]"); -- cgit