Eric Pouech : secur32: Use SecureZeroMemory to clear magic fields.
Module: wine Branch: master Commit: 0e967a5cec5cbe2932da942642be0b279336db13 URL: https://gitlab.winehq.org/wine/wine/-/commit/0e967a5cec5cbe2932da942642be0b2... Author: Eric Pouech <epouech(a)codeweavers.com> Date: Tue Nov 7 19:11:27 2023 +0100 secur32: Use SecureZeroMemory to clear magic fields. Signed-off-by: Eric Pouech <epouech(a)codeweavers.com> --- dlls/secur32/lsa.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/secur32/lsa.c b/dlls/secur32/lsa.c index 7af9c285d86..3f119df04d0 100644 --- a/dlls/secur32/lsa.c +++ b/dlls/secur32/lsa.c @@ -156,7 +156,8 @@ NTSTATUS WINAPI LsaDeregisterLogonProcess(HANDLE LsaHandle) TRACE("%p\n", LsaHandle); if (!lsa_conn || lsa_conn->magic != LSA_MAGIC_CONNECTION) return STATUS_INVALID_HANDLE; - lsa_conn->magic = 0; + /* Ensure compiler doesn't optimize out the assignment with 0. */ + SecureZeroMemory(&lsa_conn->magic, sizeof(lsa_conn->magic)); free(lsa_conn); return STATUS_SUCCESS; @@ -465,7 +466,8 @@ static SECURITY_STATUS WINAPI lsa_FreeCredentialsHandle(CredHandle *credential) status = lsa_cred->package->lsa_api->FreeCredentialsHandle(lsa_cred->handle); - lsa_cred->magic = 0; + /* Ensure compiler doesn't optimize out the assignment with 0. */ + SecureZeroMemory(&lsa_cred->magic, sizeof(lsa_cred->magic)); free(lsa_cred); return status; }
participants (1)
-
Alexandre Julliard