summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2005-04-10 10:11:36 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:11:29 -0500
commit6d1ae6d35aca66cff090d40927da1ac093dc65ce (patch)
treee67493b5c69f25fa7f7ae353ecb4ccdb1cce0a30 /source4
parent20841a25ad2a45ec920d9ad41f1279cbe2aa196f (diff)
downloadsamba-6d1ae6d35aca66cff090d40927da1ac093dc65ce.tar.gz
samba-6d1ae6d35aca66cff090d40927da1ac093dc65ce.tar.bz2
samba-6d1ae6d35aca66cff090d40927da1ac093dc65ce.zip
r6271: Don't zero the cli_credentials structure - instead allow valgrind to
track the use of un-initialised values. This change will require a recompile from clean, as the enum describing the status of each element now has a default of CRED_UNINITIALISED. Andrew Bartlett (This used to be commit 83c2eb806d43f588bd06336aa7e2dbdc00dc2c67)
Diffstat (limited to 'source4')
-rw-r--r--source4/include/credentials.h3
-rw-r--r--source4/lib/credentials.c8
2 files changed, 9 insertions, 2 deletions
diff --git a/source4/include/credentials.h b/source4/include/credentials.h
index d7bf8997eb..e7df58f217 100644
--- a/source4/include/credentials.h
+++ b/source4/include/credentials.h
@@ -23,7 +23,8 @@
/* In order of priority */
enum credentials_obtained {
- CRED_GUESSED = 0, /* Current value should be used, which was guessed */
+ CRED_UNINITIALISED = 0, /* We don't even have a guess yet */
+ CRED_GUESSED, /* Current value should be used, which was guessed */
CRED_CALLBACK, /* Callback should be used to obtain value */
CRED_SPECIFIED /* Was explicitly specified on the command-line */
};
diff --git a/source4/lib/credentials.c b/source4/lib/credentials.c
index 9c892b0688..ba263260bb 100644
--- a/source4/lib/credentials.c
+++ b/source4/lib/credentials.c
@@ -32,11 +32,17 @@
*/
struct cli_credentials *cli_credentials_init(TALLOC_CTX *mem_ctx)
{
- struct cli_credentials *cred = talloc_zero(mem_ctx, struct cli_credentials);
+ struct cli_credentials *cred = talloc(mem_ctx, struct cli_credentials);
if (!cred) {
return cred;
}
+ cred->machine_account_pending = False;
+ cred->workstation_obtained = CRED_UNINITIALISED;
+ cred->username_obtained = CRED_UNINITIALISED;
+ cred->password_obtained = CRED_UNINITIALISED;
+ cred->domain_obtained = CRED_UNINITIALISED;
+ cred->realm_obtained = CRED_UNINITIALISED;
return cred;
}