summaryrefslogtreecommitdiff
path: root/source3/winbindd/winbindd_dual_srv.c
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2011-03-11 12:48:11 +0100
committerJeremy Allison <jra@samba.org>2011-04-13 14:13:24 -0700
commit091fd0f0f74003847ab5dd72a48e8f2978a511a5 (patch)
tree7d9ee006e588e2309c7520aff9f5302367ca2074 /source3/winbindd/winbindd_dual_srv.c
parentef9d2b15e01d18dc2bf0379cc9a6df367812e287 (diff)
downloadsamba-091fd0f0f74003847ab5dd72a48e8f2978a511a5.tar.gz
samba-091fd0f0f74003847ab5dd72a48e8f2978a511a5.tar.bz2
samba-091fd0f0f74003847ab5dd72a48e8f2978a511a5.zip
s3: Add wbint_LookupSids
This will be called from wb_lookupsids to query remote DCs via lsa Signed-off-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/winbindd/winbindd_dual_srv.c')
-rw-r--r--source3/winbindd/winbindd_dual_srv.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/source3/winbindd/winbindd_dual_srv.c b/source3/winbindd/winbindd_dual_srv.c
index f5a5739fe8..e95dac234b 100644
--- a/source3/winbindd/winbindd_dual_srv.c
+++ b/source3/winbindd/winbindd_dual_srv.c
@@ -59,6 +59,24 @@ NTSTATUS _wbint_LookupSid(struct pipes_struct *p, struct wbint_LookupSid *r)
return NT_STATUS_OK;
}
+NTSTATUS _wbint_LookupSids(struct pipes_struct *p, struct wbint_LookupSids *r)
+{
+ struct winbindd_domain *domain = wb_child_domain();
+
+ if (domain == NULL) {
+ return NT_STATUS_REQUEST_NOT_ACCEPTED;
+ }
+
+ /*
+ * This breaks the winbindd_domain->methods abstraction: This
+ * is only called for remote domains, and both winbindd_msrpc
+ * and winbindd_ad call into lsa_lookupsids anyway. Caching is
+ * done at the wbint RPC layer.
+ */
+ return rpc_lookup_sids(p->mem_ctx, domain, r->in.sids,
+ &r->out.domains, &r->out.names);
+}
+
NTSTATUS _wbint_LookupName(struct pipes_struct *p, struct wbint_LookupName *r)
{
struct winbindd_domain *domain = wb_child_domain();