]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
STABLE14-windows-cmfinduserbyname-20060112
authorJeffrey Altman <jaltman@secure-endpoints.com>
Thu, 12 Jan 2006 05:55:58 +0000 (05:55 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Thu, 12 Jan 2006 05:55:58 +0000 (05:55 +0000)
FIXES 25347

Fix invalid access after freeing newly allocated data structure

(cherry picked from commit af202cac551ad541a0a1ca4525b03c2ec05f6507)

src/WINNT/afsd/smb3.c

index 4d8af4dc19c1768930a431be65c652ae825f3adf..c3e02458e11274ea3dd64f0bfed33a358f16e85f 100644 (file)
@@ -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;
 }