[SCM] Samba Shared Repository - branch v3-2-stable updated - release-3-2-0pre3-49-g36b52b4

Karolin Seeger kseeger at samba.org
Tue May 6 10:35:32 GMT 2008


The branch, v3-2-stable has been updated
       via  36b52b497a5b39e89c6f566c12a497bd26fed7f3 (commit)
      from  49be6c8dac6ddb90cd3ea2324d2dbc5d7cc503dd (commit)

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


- Log -----------------------------------------------------------------
commit 36b52b497a5b39e89c6f566c12a497bd26fed7f3
Author: Volker Lendecke <vl at samba.org>
Date:   Sat May 3 02:41:10 2008 +0200

    Fix a valgrind bug in the new [ug]id2sid cache
    
    When we're given a SID, it is not always padded with zeros. Only look at the
    initialized parts in the SID.
    (cherry picked from commit 90c37a7c2cdac3de0b75f889d63f5fe1b87a48e3)

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

Summary of changes:
 source/passdb/lookup_sid.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/passdb/lookup_sid.c b/source/passdb/lookup_sid.c
index 4341bc0..debd67b 100644
--- a/source/passdb/lookup_sid.c
+++ b/source/passdb/lookup_sid.c
@@ -1027,7 +1027,7 @@ static bool fetch_uid_from_cache( uid_t *puid, const DOM_SID *psid )
 	DATA_BLOB cache_value;
 
 	if (!memcache_lookup(NULL, SID_UID_CACHE,
-			     data_blob_const(psid, sizeof(*psid)),
+			     data_blob_const(psid, ndr_size_dom_sid(psid, 0)),
 			     &cache_value)) {
 		return false;
 	}
@@ -1045,11 +1045,11 @@ static bool fetch_uid_from_cache( uid_t *puid, const DOM_SID *psid )
 void store_uid_sid_cache(const DOM_SID *psid, uid_t uid)
 {
 	memcache_add(NULL, SID_UID_CACHE,
-		     data_blob_const(psid, sizeof(*psid)),
+		     data_blob_const(psid, ndr_size_dom_sid(psid, 0)),
 		     data_blob_const(&uid, sizeof(uid)));
 	memcache_add(NULL, UID_SID_CACHE,
 		     data_blob_const(&uid, sizeof(uid)),
-		     data_blob_const(psid, sizeof(*psid)));
+		     data_blob_const(psid, ndr_size_dom_sid(psid, 0)));
 }
 
 /*****************************************************************
@@ -1081,7 +1081,7 @@ static bool fetch_gid_from_cache(gid_t *pgid, const DOM_SID *psid)
 	DATA_BLOB cache_value;
 
 	if (!memcache_lookup(NULL, SID_UID_CACHE,
-			     data_blob_const(psid, sizeof(*psid)),
+			     data_blob_const(psid, ndr_size_dom_sid(psid, 0)),
 			     &cache_value)) {
 		return false;
 	}
@@ -1099,11 +1099,11 @@ static bool fetch_gid_from_cache(gid_t *pgid, const DOM_SID *psid)
 void store_gid_sid_cache(const DOM_SID *psid, gid_t gid)
 {
 	memcache_add(NULL, SID_GID_CACHE,
-		     data_blob_const(psid, sizeof(*psid)),
+		     data_blob_const(psid, ndr_size_dom_sid(psid, 0)),
 		     data_blob_const(&gid, sizeof(gid)));
 	memcache_add(NULL, GID_SID_CACHE,
 		     data_blob_const(&gid, sizeof(gid)),
-		     data_blob_const(psid, sizeof(*psid)));
+		     data_blob_const(psid, ndr_size_dom_sid(psid, 0)));
 }
 
 /*****************************************************************


-- 
Samba Shared Repository


More information about the samba-cvs mailing list