Implement ldap_bind* functions.
[wine] / dlls / wldap32 / winldap_private.h
1 /*
2  * WLDAP32 - LDAP support for Wine
3  *
4  * Copyright 2005 Hans Leidekker
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  *
20  * This is an internal version of winldap.h where constants, types and
21  * functions are prefixed with WLDAP32_ whenever they conflict with
22  * native headers.
23  */
24
25 typedef struct ldap
26 {
27     struct
28     {
29         UINT_PTR sb_sd;
30         UCHAR Reserved1[41];
31         ULONG_PTR sb_naddr;
32         UCHAR Reserved2[24];
33     } ld_sb;
34
35     PCHAR ld_host;
36     ULONG ld_version;
37     UCHAR ld_lberoptions;
38     ULONG ld_deref;
39     ULONG ld_timelimit;
40     ULONG ld_sizelimit;
41     ULONG ld_errno;
42     PCHAR ld_matched;
43     PCHAR ld_error;
44     ULONG ld_msgid;
45     UCHAR Reserved3[25];
46     ULONG ld_cldaptries;
47     ULONG ld_cldaptimeout;
48     ULONG ld_refhoplimit;
49     ULONG ld_options;
50 } WLDAP32_LDAP, *WLDAP32_PLDAP;
51
52 ULONG ldap_bindA(WLDAP32_LDAP*,PCHAR,PCHAR,ULONG);
53 ULONG ldap_bindW(WLDAP32_LDAP*,PWCHAR,PWCHAR,ULONG);
54 ULONG ldap_bind_sA(WLDAP32_LDAP*,PCHAR,PCHAR,ULONG);
55 ULONG ldap_bind_sW(WLDAP32_LDAP*,PWCHAR,PWCHAR,ULONG);
56
57 ULONG LdapGetLastError(void);
58 ULONG LdapMapErrorToWin32(ULONG);
59 int LdapUnicodeToUTF8(LPCWSTR,int,LPSTR,int);
60 int LdapUTF8ToUnicode(LPCSTR,int,LPWSTR,int);