The branch, v3-3-test has been updated
       via  80c18ba... Fix bug 6811 - pam_winbind references freed memory. s3: 
Fix reference to freed memory in pam_winbind.
      from  1b25367... WHATSNEW: Start WHATSNEW for 3.3.10.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test


- Log -----------------------------------------------------------------
commit 80c18ba49f4751dc104062de6a438f00a7afc39d
Author: Bo Yang <boy...@samba.org>
Date:   Wed Oct 14 12:47:49 2009 -0700

    Fix bug 6811 - pam_winbind references freed memory. s3: Fix reference to 
freed memory in pam_winbind.

-----------------------------------------------------------------------

Summary of changes:
 source/nsswitch/pam_winbind.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/nsswitch/pam_winbind.c b/source/nsswitch/pam_winbind.c
index 4dcfe73..0dcd084 100644
--- a/source/nsswitch/pam_winbind.c
+++ b/source/nsswitch/pam_winbind.c
@@ -976,7 +976,8 @@ static bool winbind_name_to_sid_string(struct pwb_context 
*ctx,
                                       char *sid_list_buffer,
                                       int sid_list_buffer_size)
 {
-       const char* sid_string;
+       const char* sid_string = NULL;
+       char *sid_str = NULL;
 
        /* lookup name? */
        if (IS_SID_STRING(name)) {
@@ -985,7 +986,6 @@ static bool winbind_name_to_sid_string(struct pwb_context 
*ctx,
                wbcErr wbc_status;
                struct wbcDomainSid sid;
                enum wbcSidType type;
-               char *sid_str;
 
                _pam_log_debug(ctx, LOG_DEBUG,
                               "no sid given, looking up: %s\n", name);
@@ -1002,15 +1002,16 @@ static bool winbind_name_to_sid_string(struct 
pwb_context *ctx,
                        return false;
                }
 
-               wbcFreeMemory(sid_str);
                sid_string = sid_str;
        }
 
        if (!safe_append_string(sid_list_buffer, sid_string,
                                sid_list_buffer_size)) {
+               wbcFreeMemory(sid_str);
                return false;
        }
 
+       wbcFreeMemory(sid_str);
        return true;
 }
 


-- 
Samba Shared Repository

Reply via email to