diff options
author | Volker Lendecke <vl@samba.org> | 2017-07-15 11:06:38 +0200 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2017-11-18 00:09:16 +0100 |
commit | 403003b528a2445ac128db5750b87de3967372bd (patch) | |
tree | f385d1a67a03e23b01c45ad924672e240a8f738d /source3/utils/ntlm_auth.c | |
parent | 25e85a4507d959a922ffc9f2eea144fbe02c37d2 (diff) | |
download | samba-403003b528a2445ac128db5750b87de3967372bd.tar.gz |
ntlm_auth: Use libwbclient in get_require_membership_sid()
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/utils/ntlm_auth.c')
-rw-r--r-- | source3/utils/ntlm_auth.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/source3/utils/ntlm_auth.c b/source3/utils/ntlm_auth.c index 932f91c22ad..c0e1c2a6525 100644 --- a/source3/utils/ntlm_auth.c +++ b/source3/utils/ntlm_auth.c @@ -392,8 +392,10 @@ static bool parse_ntlm_auth_domain_user(const char *domuser, fstring domain, } static bool get_require_membership_sid(void) { - struct winbindd_request request; - struct winbindd_response response; + fstring domain, name, sidbuf; + struct wbcDomainSid sid; + enum wbcSidType type; + wbcErr ret; if (!require_membership_of) { return True; @@ -405,25 +407,23 @@ static bool get_require_membership_sid(void) { /* Otherwise, ask winbindd for the name->sid request */ - ZERO_STRUCT(request); - ZERO_STRUCT(response); - - if (!parse_ntlm_auth_domain_user(require_membership_of, - request.data.name.dom_name, - request.data.name.name)) { + if (!parse_ntlm_auth_domain_user(require_membership_of, + domain, name)) { DEBUG(0, ("Could not parse %s into separate domain/name parts!\n", require_membership_of)); return False; } - if (winbindd_request_response(NULL, WINBINDD_LOOKUPNAME, &request, &response) != - NSS_STATUS_SUCCESS) { + ret = wbcLookupName(domain, name, &sid, &type); + if (!WBC_ERROR_IS_OK(ret)) { DEBUG(0, ("Winbindd lookupname failed to resolve %s into a SID!\n", require_membership_of)); return False; } - require_membership_of_sid = SMB_STRDUP(response.data.sid.sid); + wbcSidToStringBuf(&sid, sidbuf, sizeof(sidbuf)); + + require_membership_of_sid = SMB_STRDUP(sidbuf); if (require_membership_of_sid) return True; |