[SCM] Samba Shared Repository - branch master updated

Volker Lendecke vlendec at samba.org
Sat Nov 27 11:57:02 MST 2010


The branch, master has been updated
       via  87c6743 libwbclient: Correctly order the wbcAllocateMemory args
       via  a642cb5 libwbclient: Fix a division by zero
       via  3b71f5d s3: Return the correct result from winbindd_dual_auth_passdb
      from  0b87782 MAINTAINERS.txt - fix typo

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


- Log -----------------------------------------------------------------
commit 87c67433c8119986cab3d6948c37b85c7962c62e
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Nov 27 19:07:40 2010 +0100

    libwbclient: Correctly order the wbcAllocateMemory args
    
    In these cases, it does not make a functional difference.
    
    Autobuild-User: Volker Lendecke <vlendec at samba.org>
    Autobuild-Date: Sat Nov 27 19:56:02 CET 2010 on sn-devel-104

commit a642cb5a927f72acedf1efd7e79b1051c6ce38d5
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Nov 27 19:02:33 2010 +0100

    libwbclient: Fix a division by zero
    
    If wbinfo -r returns no groups, wbcAllocateMemory divides by zero

commit 3b71f5df0328ef2c49a76504b6b79a4e726234f0
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Nov 27 18:56:41 2010 +0100

    s3: Return the correct result from winbindd_dual_auth_passdb

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

Summary of changes:
 nsswitch/libwbclient/wbc_pam.c  |   10 +++++-----
 nsswitch/libwbclient/wbc_pwd.c  |    2 +-
 nsswitch/libwbclient/wbc_util.c |   12 ++++++------
 source3/winbindd/winbindd_pam.c |    5 +++--
 4 files changed, 15 insertions(+), 14 deletions(-)


Changeset truncated at 500 lines:

diff --git a/nsswitch/libwbclient/wbc_pam.c b/nsswitch/libwbclient/wbc_pam.c
index 41c1142..21f2c5d 100644
--- a/nsswitch/libwbclient/wbc_pam.c
+++ b/nsswitch/libwbclient/wbc_pam.c
@@ -87,7 +87,7 @@ static wbcErr wbc_create_auth_info(const struct winbindd_response *resp,
 	uint32_t j;
 
 	i = (struct wbcAuthUserInfo *)wbcAllocateMemory(
-		sizeof(struct wbcAuthUserInfo), 1,
+		1, sizeof(struct wbcAuthUserInfo),
 		wbcAuthUserInfoDestructor);
 	BAIL_ON_PTR_ERROR(i, wbc_status);
 
@@ -248,7 +248,7 @@ static wbcErr wbc_create_error_info(const struct winbindd_response *resp,
 	struct wbcAuthErrorInfo *e;
 
 	e = (struct wbcAuthErrorInfo *)wbcAllocateMemory(
-		sizeof(struct wbcAuthErrorInfo), 1,
+		1, sizeof(struct wbcAuthErrorInfo),
 		wbcAuthErrorInfoDestructor);
 	BAIL_ON_PTR_ERROR(e, wbc_status);
 
@@ -275,7 +275,7 @@ static wbcErr wbc_create_password_policy_info(const struct winbindd_response *re
 	struct wbcUserPasswordPolicyInfo *i;
 
 	i = (struct wbcUserPasswordPolicyInfo *)wbcAllocateMemory(
-		sizeof(struct wbcUserPasswordPolicyInfo), 1, NULL);
+		1, sizeof(struct wbcUserPasswordPolicyInfo), NULL);
 	BAIL_ON_PTR_ERROR(i, wbc_status);
 
 	i->min_passwordage	= resp->data.auth.policy.min_passwordage;
@@ -306,7 +306,7 @@ static wbcErr wbc_create_logon_info(struct winbindd_response *resp,
 	struct wbcLogonUserInfo *i;
 
 	i = (struct wbcLogonUserInfo *)wbcAllocateMemory(
-		sizeof(struct wbcLogonUserInfo), 1,
+		1, sizeof(struct wbcLogonUserInfo),
 		wbcLogonUserInfoDestructor);
 	BAIL_ON_PTR_ERROR(i, wbc_status);
 
@@ -1241,7 +1241,7 @@ wbcErr wbcCredentialCache(struct wbcCredentialCacheParams *params,
 	}
 
 	result = (struct wbcCredentialCacheInfo *)wbcAllocateMemory(
-		sizeof(struct wbcCredentialCacheInfo), 1,
+		1, sizeof(struct wbcCredentialCacheInfo),
 		wbcCredentialCacheInfoDestructor);
 	if (result == NULL) {
 		status = WBC_ERR_NO_MEMORY;
diff --git a/nsswitch/libwbclient/wbc_pwd.c b/nsswitch/libwbclient/wbc_pwd.c
index 1527808..abd03d7 100644
--- a/nsswitch/libwbclient/wbc_pwd.c
+++ b/nsswitch/libwbclient/wbc_pwd.c
@@ -605,7 +605,7 @@ wbcErr wbcGetGroups(const char *account,
 	BAIL_ON_WBC_ERROR(wbc_status);
 
 	groups = (gid_t *)wbcAllocateMemory(
-		sizeof(gid_t), response.data.num_entries, NULL);
+		response.data.num_entries, sizeof(gid_t), NULL);
 	BAIL_ON_PTR_ERROR(groups, wbc_status);
 
 	for (i = 0; i < response.data.num_entries; i++) {
diff --git a/nsswitch/libwbclient/wbc_util.c b/nsswitch/libwbclient/wbc_util.c
index 75b0093..e2e657a 100644
--- a/nsswitch/libwbclient/wbc_util.c
+++ b/nsswitch/libwbclient/wbc_util.c
@@ -74,7 +74,7 @@ wbcErr wbcInterfaceDetails(struct wbcInterfaceDetails **_details)
 	ZERO_STRUCT(response);
 
 	info = (struct wbcInterfaceDetails *)wbcAllocateMemory(
-		sizeof(struct wbcInterfaceDetails), 1,
+		1, sizeof(struct wbcInterfaceDetails),
 		wbcInterfaceDetailsDestructor);
 	BAIL_ON_PTR_ERROR(info, wbc_status);
 
@@ -173,7 +173,7 @@ wbcErr wbcDomainInfo(const char *domain, struct wbcDomainInfo **dinfo)
 	BAIL_ON_WBC_ERROR(wbc_status);
 
 	info = (struct wbcDomainInfo *)wbcAllocateMemory(
-		sizeof(struct wbcDomainInfo), 1, wbcDomainInfoDestructor);
+		1, sizeof(struct wbcDomainInfo), wbcDomainInfoDestructor);
 	BAIL_ON_PTR_ERROR(info, wbc_status);
 
 	info->short_name = strdup(response.data.domain_info.name);
@@ -442,7 +442,7 @@ wbcErr wbcListTrusts(struct wbcDomainInfo **domains, size_t *num_domains)
 	}
 
 	d_list = (struct wbcDomainInfo *)wbcAllocateMemory(
-		sizeof(struct wbcDomainInfo), response.data.num_entries + 1,
+		response.data.num_entries + 1,sizeof(struct wbcDomainInfo),
 		wbcDomainInfoListDestructor);
 	BAIL_ON_PTR_ERROR(d_list, wbc_status);
 
@@ -511,7 +511,7 @@ wbcErr wbcLookupDomainController(const char *domain,
 	request.flags = flags;
 
 	dc = (struct wbcDomainControllerInfo *)wbcAllocateMemory(
-		sizeof(struct wbcDomainControllerInfo), 1,
+		 1, sizeof(struct wbcDomainControllerInfo),
 		wbcDomainControllerInfoDestructor);
 	BAIL_ON_PTR_ERROR(dc, wbc_status);
 
@@ -554,7 +554,7 @@ static wbcErr wbc_create_domain_controller_info_ex(const struct winbindd_respons
 	struct wbcGuid guid;
 
 	i = (struct wbcDomainControllerInfoEx *)wbcAllocateMemory(
-		sizeof(struct wbcDomainControllerInfoEx), 1,
+		1, sizeof(struct wbcDomainControllerInfoEx),
 		wbcDomainControllerInfoExDestructor);
 	BAIL_ON_PTR_ERROR(i, wbc_status);
 
@@ -698,7 +698,7 @@ wbcErr wbcAddNamedBlob(size_t *num_blobs,
 	 * wbcNamedBlobDestructor
 	 */
 	blobs = (struct wbcNamedBlob *)wbcAllocateMemory(
-		sizeof(struct wbcNamedBlob), *num_blobs + 2,
+		*num_blobs + 2, sizeof(struct wbcNamedBlob),
 		wbcNamedBlobDestructor);
 
 	if (*pblobs != NULL) {
diff --git a/source3/winbindd/winbindd_pam.c b/source3/winbindd/winbindd_pam.c
index 0053b7f..d52d4e2 100644
--- a/source3/winbindd/winbindd_pam.c
+++ b/source3/winbindd/winbindd_pam.c
@@ -1118,8 +1118,9 @@ static NTSTATUS winbindd_dual_auth_passdb(TALLOC_CTX *mem_ctx,
 	status = check_sam_security_info3(challenge, talloc_tos(), user_info,
 					  pinfo3);
 	free_user_info(&user_info);
-	DEBUG(10, ("Authenticated user %s\\%s successfully\n", domain, user));
-	return NT_STATUS_OK;
+	DEBUG(10, ("Authenticaticating user %s\\%s returned %s\n", domain,
+		   user, nt_errstr(status)));
+	return status;
 }
 
 typedef	NTSTATUS (*netlogon_fn_t)(struct rpc_pipe_client *cli,


-- 
Samba Shared Repository


More information about the samba-cvs mailing list