summaryrefslogtreecommitdiff
path: root/source/nsswitch
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2008-03-28 19:38:24 +0100
committerKarolin Seeger <kseeger@samba.org>2008-04-12 07:48:28 +0200
commit3ad0f027e4bec8ffef33d71fff7a7f2e1362164d (patch)
tree24428d1dcaab228e315e702b9028c5d12f19fdc7 /source/nsswitch
parent75978720bfd2f0f52251fc433f6f6c9798895d7f (diff)
downloadsamba-3ad0f027e4bec8ffef33d71fff7a7f2e1362164d.tar.gz
wbinfo: use wbcSidToGid()
metze (cherry picked from commit 43df48bdca1a71fa44b24bb3917869f886555d9c)
Diffstat (limited to 'source/nsswitch')
-rw-r--r--source/nsswitch/wbinfo.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/source/nsswitch/wbinfo.c b/source/nsswitch/wbinfo.c
index 660ce4eb0f0..93ab5d9c054 100644
--- a/source/nsswitch/wbinfo.c
+++ b/source/nsswitch/wbinfo.c
@@ -702,25 +702,27 @@ static bool wbinfo_sid_to_uid(const char *sid_str)
return true;
}
-static bool wbinfo_sid_to_gid(char *sid)
+static bool wbinfo_sid_to_gid(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;
+ gid_t gid;
/* 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_GID, &request, &response) !=
- NSS_STATUS_SUCCESS)
+ wbc_status = wbcSidToGid(&sid, &gid);
+ if (!WBC_ERROR_IS_OK(wbc_status)) {
return false;
+ }
/* Display response */
- d_printf("%d\n", (int)response.data.gid);
+ d_printf("%d\n", (int)gid);
return true;
}