[SCM] Samba Shared Repository - branch master updated

Günther Deschner gd at samba.org
Wed Jun 8 06:45:02 MDT 2011


The branch, master has been updated
       via  ae6a779 s3-winbindd: make sure we obey the -n switch also for samlogon cache access.
       via  47ea009 s3-spoolss: fix -Wunused-but-set-variable build warning in _spoolss_EnumPrintProcDataTypes().
      from  4fa5125 tdb: enable VALGRIND to remove valgrind noise.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit ae6a779bf9f816680e724ede37324b7f5355996b
Author: Günther Deschner <gd at samba.org>
Date:   Wed Jun 8 12:56:10 2011 +0200

    s3-winbindd: make sure we obey the -n switch also for samlogon cache access.
    
    Guenther
    
    Autobuild-User: Günther Deschner <gd at samba.org>
    Autobuild-Date: Wed Jun  8 14:44:31 CEST 2011 on sn-devel-104

commit 47ea009e86a2a4499e216d97e5b64cc9e52a27ad
Author: Günther Deschner <gd at samba.org>
Date:   Wed Jun 8 12:00:46 2011 +0200

    s3-spoolss: fix -Wunused-but-set-variable build warning in _spoolss_EnumPrintProcDataTypes().
    
    We were in fact ignoring the error code here.
    
    Guenther

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

Summary of changes:
 source3/rpc_server/spoolss/srv_spoolss_nt.c |    4 ++++
 source3/winbindd/winbindd_ads.c             |    2 +-
 source3/winbindd/winbindd_cache.c           |    4 ++++
 source3/winbindd/winbindd_creds.c           |    4 ++++
 source3/winbindd/winbindd_msrpc.c           |    6 ++++--
 source3/winbindd/winbindd_util.c            |    4 ++++
 6 files changed, 21 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/spoolss/srv_spoolss_nt.c b/source3/rpc_server/spoolss/srv_spoolss_nt.c
index 52e4ab0..a946bc9 100644
--- a/source3/rpc_server/spoolss/srv_spoolss_nt.c
+++ b/source3/rpc_server/spoolss/srv_spoolss_nt.c
@@ -8831,6 +8831,10 @@ WERROR _spoolss_EnumPrintProcDataTypes(struct pipes_struct *p,
 		return WERR_UNKNOWN_LEVEL;
 	}
 
+	if (!W_ERROR_IS_OK(result)) {
+		return result;
+	}
+
 	*r->out.needed	= SPOOLSS_BUFFER_UNION_ARRAY(p->mem_ctx,
 						     spoolss_EnumPrintProcDataTypes,
 						     *r->out.info, r->in.level,
diff --git a/source3/winbindd/winbindd_ads.c b/source3/winbindd/winbindd_ads.c
index dde8e3f..770ed43 100644
--- a/source3/winbindd/winbindd_ads.c
+++ b/source3/winbindd/winbindd_ads.c
@@ -489,7 +489,7 @@ static NTSTATUS query_user(struct winbindd_domain *domain,
 
 	/* try netsamlogon cache first */
 
-	if ( (user = netsamlogon_cache_get( mem_ctx, sid )) != NULL ) 
+	if (winbindd_use_cache() && (user = netsamlogon_cache_get( mem_ctx, sid )) != NULL )
 	{
 		DEBUG(5,("query_user: Cache lookup succeeded for %s\n", 
 			 sid_string_dbg(sid)));
diff --git a/source3/winbindd/winbindd_cache.c b/source3/winbindd/winbindd_cache.c
index d733be0..50da98f 100644
--- a/source3/winbindd/winbindd_cache.c
+++ b/source3/winbindd/winbindd_cache.c
@@ -1296,6 +1296,10 @@ NTSTATUS wcache_get_creds(struct winbindd_domain *domain,
 	uint32 rid;
 	fstring tmp;
 
+	if (!winbindd_use_cache()) {
+		return NT_STATUS_OBJECT_NAME_NOT_FOUND;
+	}
+
 	if (!cache->tdb) {
 		return NT_STATUS_INTERNAL_DB_ERROR;
 	}
diff --git a/source3/winbindd/winbindd_creds.c b/source3/winbindd/winbindd_creds.c
index 6bbd0ff..a160f7a 100644
--- a/source3/winbindd/winbindd_creds.c
+++ b/source3/winbindd/winbindd_creds.c
@@ -38,6 +38,10 @@ NTSTATUS winbindd_get_creds(struct winbindd_domain *domain,
 	struct netr_SamInfo3 *info;
 	NTSTATUS status;
 
+	if (!winbindd_use_cache()) {
+		return NT_STATUS_OBJECT_NAME_NOT_FOUND;
+	}
+
 	status = wcache_get_creds(domain, mem_ctx, sid, cached_nt_pass, cred_salt);
 	if (!NT_STATUS_IS_OK(status)) {
 		return status;
diff --git a/source3/winbindd/winbindd_msrpc.c b/source3/winbindd/winbindd_msrpc.c
index 42879f2..b17cafe 100644
--- a/source3/winbindd/winbindd_msrpc.c
+++ b/source3/winbindd/winbindd_msrpc.c
@@ -400,7 +400,7 @@ static NTSTATUS msrpc_query_user(struct winbindd_domain *domain,
 {
 	struct rpc_pipe_client *samr_pipe;
 	struct policy_handle dom_pol;
-	struct netr_SamInfo3 *user;
+	struct netr_SamInfo3 *user = NULL;
 	TALLOC_CTX *tmp_ctx;
 	NTSTATUS status;
 
@@ -418,7 +418,9 @@ static NTSTATUS msrpc_query_user(struct winbindd_domain *domain,
 	}
 
 	/* try netsamlogon cache first */
-	user = netsamlogon_cache_get(tmp_ctx, user_sid);
+	if (winbindd_use_cache()) {
+		user = netsamlogon_cache_get(tmp_ctx, user_sid);
+	}
 	if (user != NULL) {
 		DEBUG(5,("msrpc_query_user: Cache lookup succeeded for %s\n",
 			sid_string_dbg(user_sid)));
diff --git a/source3/winbindd/winbindd_util.c b/source3/winbindd/winbindd_util.c
index 63cb2d2..7fede49 100644
--- a/source3/winbindd/winbindd_util.c
+++ b/source3/winbindd/winbindd_util.c
@@ -1022,6 +1022,10 @@ NTSTATUS lookup_usergroups_cached(struct winbindd_domain *domain,
 	*user_sids = NULL;
 	*p_num_groups = 0;
 
+	if (!winbindd_use_cache()) {
+		return NT_STATUS_OBJECT_NAME_NOT_FOUND;
+	}
+
 	info3 = netsamlogon_cache_get(mem_ctx, user_sid);
 
 	if (info3 == NULL) {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list