Merge 2610c05b5b95cc7036b3d6dfb894c6cfbdb68483 as Samba-4.0alpha16
[amitay/samba.git] / source4 / libcli / wbclient / wbclient.h
1 /*
2    Unix SMB/CIFS implementation.
3
4    Winbind client library.
5
6    Copyright (C) 2008 Kai Blin  <kai@samba.org>
7
8    This program is free software; you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation; either version 3 of the License, or
11    (at your option) any later version.
12
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17
18    You should have received a copy of the GNU General Public License
19    along with this program.  If not, see <http://www.gnu.org/licenses/>.
20 */
21 #include "lib/messaging/irpc.h"
22 #include "libcli/composite/composite.h"
23 #include "librpc/gen_ndr/ndr_winbind_c.h"
24
25 struct wbc_context {
26         struct tevent_context *event_ctx;
27         struct dcerpc_binding_handle *irpc_handle;
28 };
29
30 struct wbc_context *wbc_init(TALLOC_CTX *mem_ctx,
31                              struct imessaging_context *msg_ctx,
32                              struct tevent_context *event_ctx);
33
34 struct composite_context *wbc_sids_to_xids_send(struct wbc_context *wbc_ctx,
35                                                 TALLOC_CTX *mem_ctx,
36                                                 uint32_t count,
37                                                 struct id_map *ids);
38
39 NTSTATUS wbc_sids_to_xids_recv(struct composite_context *ctx,
40                                struct id_map **ids);
41
42 struct composite_context *wbc_xids_to_sids_send(struct wbc_context *wbc_ctx,
43                                                 TALLOC_CTX *mem_ctx,
44                                                 uint32_t count,
45                                                 struct id_map *ids);
46
47 NTSTATUS wbc_xids_to_sids_recv(struct composite_context *ctx,
48                                struct id_map **ids);
49