From: Stefan Metzmacher Date: Mon, 22 May 2017 10:31:01 +0000 (+0200) Subject: s3:secrets: rewrite secrets_delete_machine_password_ex() using helper variables X-Git-Tag: tdb-1.3.14~112 X-Git-Url: http://git.samba.org/samba.git/?p=sfrench%2Fsamba-autobuild%2F.git;a=commitdiff_plain;h=5bc2764fe517748c03a57b61f2f7ef889c92825d s3:secrets: rewrite secrets_delete_machine_password_ex() using helper variables BUG: https://bugzilla.samba.org/show_bug.cgi?id=12782 Signed-off-by: Stefan Metzmacher Reviewed-by: Andreas Schneider --- diff --git a/source3/passdb/machine_account_secrets.c b/source3/passdb/machine_account_secrets.c index 2457ac73ab6..56a944246b8 100644 --- a/source3/passdb/machine_account_secrets.c +++ b/source3/passdb/machine_account_secrets.c @@ -377,16 +377,34 @@ bool secrets_fetch_trust_account_password(const char *domain, uint8_t ret_pwd[16 bool secrets_delete_machine_password_ex(const char *domain) { - if (!secrets_delete(machine_prev_password_keystr(domain))) { + const char *tmpkey = NULL; + bool ok; + + tmpkey = machine_prev_password_keystr(domain); + ok = secrets_delete(tmpkey); + if (!ok) { + return false; + } + + tmpkey = machine_password_keystr(domain); + ok = secrets_delete_entry(tmpkey); + if (!ok) { return false; } - if (!secrets_delete_entry(machine_password_keystr(domain))) { + + tmpkey = machine_sec_channel_type_keystr(domain); + ok = secrets_delete_entry(tmpkey); + if (!ok) { return false; } - if (!secrets_delete_entry(machine_sec_channel_type_keystr(domain))) { + + tmpkey = machine_last_change_time_keystr(domain); + ok = secrets_delete_entry(tmpkey); + if (!ok) { return false; } - return secrets_delete_entry(machine_last_change_time_keystr(domain)); + + return true; } /************************************************************************