From cdd514a3503a88dbadbf03a1f8726ea013eb97e1 Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Thu, 12 Jan 2006 05:55:58 +0000 Subject: [PATCH] STABLE14-windows-cmfinduserbyname-20060112 FIXES 25347 Fix invalid access after freeing newly allocated data structure (cherry picked from commit af202cac551ad541a0a1ca4525b03c2ec05f6507) --- src/WINNT/afsd/smb3.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/WINNT/afsd/smb3.c b/src/WINNT/afsd/smb3.c index 4d8af4dc1..c3e02458e 100644 --- a/src/WINNT/afsd/smb3.c +++ b/src/WINNT/afsd/smb3.c @@ -7176,6 +7176,7 @@ void smb3_Init() cm_user_t *smb_FindCMUserByName(char *usern, char *machine) { smb_username_t *unp; + cm_user_t * userp; unp = smb_FindUserByName(usern, machine, SMB_FLAG_CREATE); if (!unp->userp) { @@ -7188,8 +7189,9 @@ cm_user_t *smb_FindCMUserByName(char *usern, char *machine) osi_Log2(smb_logp,"smb_FindCMUserByName Not found name[%s] machine[%s]",osi_LogSaveString(smb_logp,usern),osi_LogSaveString(smb_logp,machine)); osi_LogEvent("AFS smb_FindCMUserByName : Found",NULL,"name[%s] machine[%s]",usern,machine); } - cm_HoldUser(unp->userp); + userp = unp->userp; + cm_HoldUser(userp); smb_ReleaseUsername(unp); - return unp->userp; + return userp; } -- 2.39.5