From: Stefan Metzmacher Date: Fri, 28 Mar 2008 18:37:50 +0000 (+0100) Subject: wbinfo: use wbcSidToUid() X-Git-Tag: samba-3.3.0pre1~3006 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a25b39cac1716323154dd30acb30180d3273587b;p=thirdparty%2Fsamba.git wbinfo: use wbcSidToUid() metze --- diff --git a/source/nsswitch/wbinfo.c b/source/nsswitch/wbinfo.c index c99e288e07b..ecceb929282 100644 --- a/source/nsswitch/wbinfo.c +++ b/source/nsswitch/wbinfo.c @@ -618,25 +618,27 @@ static bool wbinfo_gid_to_sid(gid_t gid) /* Convert sid to uid */ -static bool wbinfo_sid_to_uid(char *sid) +static bool wbinfo_sid_to_uid(const char *sid_str) { - struct winbindd_request request; - struct winbindd_response response; - - ZERO_STRUCT(request); - ZERO_STRUCT(response); + wbcErr wbc_status = WBC_ERR_UNKNOWN_FAILURE; + struct wbcDomainSid sid; + uid_t uid; /* Send request */ - fstrcpy(request.data.sid, sid); + wbc_status = wbcStringToSid(sid_str, &sid); + if (!WBC_ERROR_IS_OK(wbc_status)) { + return false; + } - if (winbindd_request_response(WINBINDD_SID_TO_UID, &request, &response) != - NSS_STATUS_SUCCESS) + wbc_status = wbcSidToUid(&sid, &uid); + if (!WBC_ERROR_IS_OK(wbc_status)) { return false; + } /* Display response */ - d_printf("%d\n", (int)response.data.uid); + d_printf("%d\n", (int)uid); return true; }