diff options
author | Volker Lendecke <vlendec@samba.org> | 2007-03-13 16:13:24 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:18:36 -0500 |
commit | aa6055debd078504f6a7ed861443b02672fc9067 (patch) | |
tree | 9c3fad25df2d7d6b993a214d1db85ced36561952 /source3/passdb | |
parent | 0e702698f9a7cf0e528f073bae65371ed58e5496 (diff) | |
download | samba-aa6055debd078504f6a7ed861443b02672fc9067.tar.gz samba-aa6055debd078504f6a7ed861443b02672fc9067.tar.bz2 samba-aa6055debd078504f6a7ed861443b02672fc9067.zip |
r21823: Let secrets_store_machine_password() also store the account name. Not used
yet, the next step will be a secrets_fetch_machine_account() function that
also pulls the account name to be used in the appropriate places.
Volker
(This used to be commit f94e5af72e282f70ca5454cdf3aed510b747eb93)
Diffstat (limited to 'source3/passdb')
-rw-r--r-- | source3/passdb/secrets.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/source3/passdb/secrets.c b/source3/passdb/secrets.c index 15c79745a0..21a55b09a0 100644 --- a/source3/passdb/secrets.c +++ b/source3/passdb/secrets.c @@ -553,7 +553,10 @@ BOOL secrets_store_trusted_domain_password(const char* domain, const char* pwd, the password is assumed to be a null terminated ascii string ************************************************************************/ -BOOL secrets_store_machine_password(const char *pass, const char *domain, uint32 sec_channel) +BOOL secrets_store_machine_password(const char *pass, + const char *accountname, + const char *domain, + uint32 sec_channel) { char *key = NULL; BOOL ret = False; @@ -581,6 +584,22 @@ BOOL secrets_store_machine_password(const char *pass, const char *domain, uint32 goto fail; } + if (asprintf(&key, "%s/%s", SECRETS_MACHINE_ACCOUNTNAME, + domain) == -1) { + DEBUG(5, ("asprintf failed\n")); + goto fail; + } + strupper_m(key); + + ret = secrets_store(key, accountname, strlen(accountname)+1); + SAFE_FREE(key); + + if (!ret) { + DEBUG(5, ("secrets_store failed: %s\n", + tdb_errorstr(tdb))); + goto fail; + } + if (asprintf(&key, "%s/%s", SECRETS_MACHINE_LAST_CHANGE_TIME, domain) == -1) { DEBUG(5, ("asprintf failed\n")); |