[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-unstable-851-g1bbdbde

Volker Lendecke vl at samba.org
Sat Dec 22 23:54:41 GMT 2007


The branch, v3-2-test has been updated
       via  1bbdbdef991408af07afaba7bc0b4da55f06aed8 (commit)
       via  9a24753d35a4b1a283a65c60088d82e4b80f14c8 (commit)
       via  8bd248456205a82d57af21559a77a1030f4679b7 (commit)
      from  9e8b8f8c16612d8a08b55802f4fd9afca5498a7c (commit)

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


- Log -----------------------------------------------------------------
commit 1bbdbdef991408af07afaba7bc0b4da55f06aed8
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Dec 23 00:35:06 2007 +0100

    Fix wbcAllocate[GU]id
    
    wbcRequestResponse() returns a wbcErr, not NSS_STATUS

commit 9a24753d35a4b1a283a65c60088d82e4b80f14c8
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Dec 23 00:33:44 2007 +0100

    Fix wbcPing()
    
    Without request and response, wbcRequestResponse() will always return
    WBC_ERR_INVALID_PARAM, so the ping will never reach winbind.

commit 8bd248456205a82d57af21559a77a1030f4679b7
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Dec 23 00:32:09 2007 +0100

    tiny simplification

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

Summary of changes:
 source/lib/winbind_util.c               |    4 ----
 source/nsswitch/libwbclient/wbc_idmap.c |   26 ++++++++++++++------------
 source/nsswitch/libwbclient/wbc_util.c  |   10 +++++++++-
 3 files changed, 23 insertions(+), 17 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/lib/winbind_util.c b/source/lib/winbind_util.c
index f4e7ab1..f51a017 100644
--- a/source/lib/winbind_util.c
+++ b/source/lib/winbind_util.c
@@ -105,8 +105,6 @@ bool winbind_sid_to_uid(uid_t *puid, const DOM_SID *sid)
 	memcpy(&dom_sid, sid, sizeof(dom_sid));	
 
 	result = wbcSidToUid(&dom_sid, puid);	
-	if (result != WBC_ERR_SUCCESS)
-		return False;
 
 	return (result == WBC_ERR_SUCCESS);	
 }
@@ -138,8 +136,6 @@ bool winbind_sid_to_gid(gid_t *pgid, const DOM_SID *sid)
 	memcpy(&dom_sid, sid, sizeof(dom_sid));	
 
 	result = wbcSidToGid(&dom_sid, pgid);	
-	if (result != WBC_ERR_SUCCESS)
-		return False;
 
 	return (result == WBC_ERR_SUCCESS);	
 }
diff --git a/source/nsswitch/libwbclient/wbc_idmap.c b/source/nsswitch/libwbclient/wbc_idmap.c
index 651c270..53f9678 100644
--- a/source/nsswitch/libwbclient/wbc_idmap.c
+++ b/source/nsswitch/libwbclient/wbc_idmap.c
@@ -211,7 +211,7 @@ wbcErr wbcAllocateUid(uid_t *puid)
 {
 	struct winbindd_request request;
 	struct winbindd_response response;
-	NSS_STATUS result;
+	wbcErr wbc_status = WBC_ERR_UNKNOWN_FAILURE;
 
 	if (!puid)
 		return WBC_ERR_INVALID_PARAM;
@@ -223,16 +223,17 @@ wbcErr wbcAllocateUid(uid_t *puid)
 
 	/* Make request */
 
-	result = wbcRequestResponse(WINBINDD_ALLOCATE_UID,
+	wbc_status = wbcRequestResponse(WINBINDD_ALLOCATE_UID,
 					   &request, &response);
-
-	if (result != NSS_STATUS_SUCCESS)
-		return WBC_ERR_UNKNOWN_FAILURE;
+	BAIL_ON_WBC_ERROR(wbc_status);
 
 	/* Copy out result */
 	*puid = response.data.uid;
 
-	return WBC_ERR_SUCCESS;
+	wbc_status = WBC_ERR_SUCCESS;
+
+ done:
+	return wbc_status;
 }
 
 /** @brief Obtain a new gid from Winbind
@@ -246,7 +247,7 @@ wbcErr wbcAllocateGid(uid_t *pgid)
 {
 	struct winbindd_request request;
 	struct winbindd_response response;
-	NSS_STATUS result;
+	wbcErr wbc_status = WBC_ERR_UNKNOWN_FAILURE;
 
 	if (!pgid)
 		return WBC_ERR_INVALID_PARAM;
@@ -258,15 +259,16 @@ wbcErr wbcAllocateGid(uid_t *pgid)
 
 	/* Make request */
 
-	result = wbcRequestResponse(WINBINDD_ALLOCATE_GID,
+	wbc_status = wbcRequestResponse(WINBINDD_ALLOCATE_GID,
 					   &request, &response);
-
-	if (result != NSS_STATUS_SUCCESS)
-		return WBC_ERR_UNKNOWN_FAILURE;
+	BAIL_ON_WBC_ERROR(wbc_status);
 
 	/* Copy out result */
 	*pgid = response.data.gid;
 
-	return WBC_ERR_SUCCESS;
+	wbc_status = WBC_ERR_SUCCESS;
+
+ done:
+	return wbc_status;
 }
 
diff --git a/source/nsswitch/libwbclient/wbc_util.c b/source/nsswitch/libwbclient/wbc_util.c
index b0adaad..c6acb27 100644
--- a/source/nsswitch/libwbclient/wbc_util.c
+++ b/source/nsswitch/libwbclient/wbc_util.c
@@ -33,7 +33,15 @@
 
 wbcErr wbcPing(void)
 {
-	return wbcRequestResponse(WINBINDD_PING, NULL, NULL);
+	struct winbindd_request request;
+	struct winbindd_response response;
+
+	/* Initialize request */
+
+	ZERO_STRUCT(request);
+	ZERO_STRUCT(response);
+
+	return wbcRequestResponse(WINBINDD_PING, &request, &response);
 }
 
 /** @brief Lookup the current status of a trusted domain


-- 
Samba Shared Repository


More information about the samba-cvs mailing list