]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s3: Fix use of dbwrap_transaction_cancel() in machine_account_secrets.c
authorPavel Filipenský <pfilipensky@samba.org>
Thu, 20 Feb 2025 19:33:19 +0000 (20:33 +0100)
committerRalph Boehme <slow@samba.org>
Sat, 29 Mar 2025 19:02:34 +0000 (19:02 +0000)
Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Sat Mar 29 19:02:35 UTC 2025 on atb-devel-224

source3/passdb/machine_account_secrets.c

index 0679535f0262d3d86ace48c02cde46868d32c6dd..971dd15aa5f3095defa0adf7961b0d927c8d3ed7 100644 (file)
@@ -1516,7 +1516,6 @@ NTSTATUS secrets_fetch_or_upgrade_domain_info(const char *domain,
        if (ret != 0) {
                DBG_ERR("dbwrap_transaction_commit() failed for %s\n",
                        domain);
-               dbwrap_transaction_cancel(db);
                TALLOC_FREE(frame);
                return NT_STATUS_INTERNAL_DB_ERROR;
        }
@@ -1711,6 +1710,7 @@ NTSTATUS secrets_prepare_password_change(const char *domain, const char *dcname,
        next = talloc_zero(frame, struct secrets_domain_info1_change);
        if (next == NULL) {
                DBG_ERR("talloc_zero failed\n");
+               dbwrap_transaction_cancel(db);
                TALLOC_FREE(frame);
                return NT_STATUS_NO_MEMORY;
        }
@@ -1773,7 +1773,6 @@ NTSTATUS secrets_prepare_password_change(const char *domain, const char *dcname,
                status = sync_pw2keytabs_fn();
                if (!NT_STATUS_IS_OK(status)) {
                        DBG_ERR("Sync of machine password failed.\n");
-                       dbwrap_transaction_cancel(db);
                        TALLOC_FREE(frame);
                        return status;
                }