Tidyup prompted by #6554 - Wrong deallocation in sam_account_ok.
authorJeremy Allison <jra@samba.org>
Thu, 16 Jul 2009 16:54:14 +0000 (09:54 -0700)
committerJeremy Allison <jra@samba.org>
Thu, 16 Jul 2009 16:54:14 +0000 (09:54 -0700)
Jeremy.

source3/auth/auth_sam.c

index a2634feb6c02c4b3ddb014d2946e8672922da8eb..26b45e47e5664821828cc7bc376bb0acad14df1e 100644 (file)
@@ -226,10 +226,10 @@ static NTSTATUS sam_account_ok(TALLOC_CTX *mem_ctx,
 
        if (*workstation_list) {
                bool invalid_ws = True;
-               char *tok;
+               char *tok = NULL;
                const char *s = workstation_list;
+               char *machine_name = talloc_asprintf(mem_ctx, "%s$", user_info->wksta_name);
 
-               const char *machine_name = talloc_asprintf(mem_ctx, "%s$", user_info->wksta_name);
                if (machine_name == NULL)
                        return NT_STATUS_NO_MEMORY;
 
@@ -251,6 +251,7 @@ static NTSTATUS sam_account_ok(TALLOC_CTX *mem_ctx,
                        TALLOC_FREE(tok);
                }
                TALLOC_FREE(tok);
+               TALLOC_FREE(machine_name);
 
                if (invalid_ws)
                        return NT_STATUS_INVALID_WORKSTATION;