OSDN Git Service

Avoid an implication that the API is exclusively 32-bit.
[mingw/mingw-org-wsl.git] / wslapi / include / winldap.h
1 /*
2   winldap.h - Header file for the Windows LDAP API
3
4   Written by Filip Navara <xnavara@volny.cz>
5
6   References:
7     The C LDAP Application Program Interface
8     http://www.watersprings.org/pub/id/draft-ietf-ldapext-ldap-c-api-05.txt
9
10     Lightweight Directory Access Protocol Reference
11     http://msdn.microsoft.com/library/en-us/netdir/ldap/ldap_reference.asp
12
13   This library 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.
16 */
17
18 #ifndef _WINLDAP_H
19 #define _WINLDAP_H
20 #if __GNUC__ >= 3
21 #pragma GCC system_header
22 #endif
23
24 #ifndef _SCHANNEL_H
25 #include <schannel.h>
26 #endif
27
28 #ifndef _WINBER_H
29 #include <winber.h>
30 #endif
31
32 #ifndef WINLDAPAPI
33 #define WINLDAPAPI DECLSPEC_IMPORT
34 #endif
35
36 #ifndef _WINLDAP_DEPRECATED
37 #if (( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3)
38 #define _WINLDAP_DEPRECATED __attribute__((__deprecated__))
39 #else
40 #define _WINLDAP_DEPRECATED
41 #endif
42 #endif
43
44 #include <pshpack4.h>
45
46 #ifdef __cplusplus
47 extern "C" {
48 #endif
49
50 #define LDAP_VERSION1   1
51 #define LDAP_VERSION2   2
52 #define LDAP_VERSION3   3
53 #define LDAP_VERSION    LDAP_VERSION2
54 #define LDAP_API_VERSION        2004
55 #define LDAP_VERSION_MIN        LDAP_VERSION2
56 #define LDAP_VERSION_MAX        LDAP_VERSION3
57 #define LDAP_VENDOR_NAME        "Microsoft Corporation."
58 #define LDAP_VENDOR_NAME_W      L"Microsoft Corporation."
59 #define LDAP_VENDOR_VERSION     510
60 #define LDAP_API_INFO_VERSION   1
61 #define LDAP_FEATURE_INFO_VERSION       1
62 #define LDAP_SUCCESS    0x00
63 #define LDAP_OPERATIONS_ERROR   0x01
64 #define LDAP_PROTOCOL_ERROR     0x02
65 #define LDAP_TIMELIMIT_EXCEEDED 0x03
66 #define LDAP_SIZELIMIT_EXCEEDED 0x04
67 #define LDAP_COMPARE_FALSE      0x05
68 #define LDAP_COMPARE_TRUE       0x06
69 #define LDAP_STRONG_AUTH_NOT_SUPPORTED  0x07
70 #define LDAP_STRONG_AUTH_REQUIRED       0x08
71 #define LDAP_REFERRAL_V2        0x09
72 #define LDAP_REFERRAL   0x0a
73 #define LDAP_ADMIN_LIMIT_EXCEEDED       0x0b
74 #define LDAP_UNAVAILABLE_CRIT_EXTENSION 0x0c
75 #define LDAP_CONFIDENTIALITY_REQUIRED   0x0d
76 #define LDAP_SASL_BIND_IN_PROGRESS      0x0e
77 #define LDAP_NO_SUCH_ATTRIBUTE  0x10
78 #define LDAP_UNDEFINED_TYPE     0x11
79 #define LDAP_INAPPROPRIATE_MATCHING     0x12
80 #define LDAP_CONSTRAINT_VIOLATION       0x13
81 #define LDAP_TYPE_OR_VALUE_EXISTS       0x14
82 #define LDAP_INVALID_SYNTAX     0x15
83 #define LDAP_NO_SUCH_OBJECT     0x20
84 #define LDAP_ALIAS_PROBLEM      0x21
85 #define LDAP_INVALID_DN_SYNTAX  0x22
86 #define LDAP_IS_LEAF    0x23
87 #define LDAP_ALIAS_DEREF_PROBLEM        0x24
88 #define LDAP_INAPPROPRIATE_AUTH 0x30
89 #define LDAP_INVALID_CREDENTIALS        0x31
90 #define LDAP_INSUFFICIENT_ACCESS        0x32
91 #define LDAP_BUSY       0x33
92 #define LDAP_UNAVAILABLE        0x34
93 #define LDAP_UNWILLING_TO_PERFORM       0x35
94 #define LDAP_LOOP_DETECT        0x36
95 #define LDAP_NAMING_VIOLATION   0x40
96 #define LDAP_OBJECT_CLASS_VIOLATION     0x41
97 #define LDAP_NOT_ALLOWED_ON_NONLEAF     0x42
98 #define LDAP_NOT_ALLOWED_ON_RDN 0x43
99 #define LDAP_ALREADY_EXISTS     0x44
100 #define LDAP_NO_OBJECT_CLASS_MODS       0x45
101 #define LDAP_RESULTS_TOO_LARGE  0x46
102 #define LDAP_AFFECTS_MULTIPLE_DSAS      0x47
103 #define LDAP_OTHER      0x50
104 #define LDAP_SERVER_DOWN        0x51
105 #define LDAP_LOCAL_ERROR        0x52
106 #define LDAP_ENCODING_ERROR     0x53
107 #define LDAP_DECODING_ERROR     0x54
108 #define LDAP_TIMEOUT    0x55
109 #define LDAP_AUTH_UNKNOWN       0x56
110 #define LDAP_FILTER_ERROR       0x57
111 #define LDAP_USER_CANCELLED     0x58
112 #define LDAP_PARAM_ERROR        0x59
113 #define LDAP_NO_MEMORY  0x5a
114 #define LDAP_CONNECT_ERROR      0x5b
115 #define LDAP_NOT_SUPPORTED      0x5c
116 #define LDAP_CONTROL_NOT_FOUND  0x5d
117 #define LDAP_NO_RESULTS_RETURNED        0x5e
118 #define LDAP_MORE_RESULTS_TO_RETURN     0x5f
119 #define LDAP_CLIENT_LOOP        0x60
120 #define LDAP_REFERRAL_LIMIT_EXCEEDED    0x61
121 #define LDAP_OPT_SUCCESS        LDAP_SUCCESS
122 #define LDAP_AUTH_METHOD_NOT_SUPPORTED  LDAP_STRONG_AUTH_NOT_SUPPORTED
123 #define LDAP_ATTRIBUTE_OR_VALUE_EXISTS  LDAP_TYPE_OR_VALUE_EXISTS
124 #define LDAP_INSUFFICIENT_RIGHTS        LDAP_INSUFFICIENT_ACCESS
125 #define LDAP_PARTIAL_RESULTS    LDAP_REFERRAL_V2
126 #define LDAP_PORT       389
127 #define LDAP_SSL_PORT   636
128 #define LDAP_GC_PORT    3268
129 #define LDAP_SSL_GC_PORT        3269
130 #define LDAP_OPT_ON     ((void*)1)
131 #define LDAP_OPT_OFF    ((void*)0)
132 #define LDAP_OPT_API_INFO       0x00
133 #define LDAP_OPT_DESC   0x01
134 #define LDAP_OPT_DEREF  0x02
135 #define LDAP_OPT_SIZELIMIT      0x03
136 #define LDAP_OPT_TIMELIMIT      0x04
137 #define LDAP_OPT_THREAD_FN_PTRS 0x05
138 #define LDAP_OPT_REBIND_FN      0x06
139 #define LDAP_OPT_REBIND_ARG     0x07
140 #define LDAP_OPT_REFERRALS      0x08
141 #define LDAP_OPT_RESTART        0x09
142 #define LDAP_OPT_SSL    0x0a
143 #define LDAP_OPT_IO_FN_PTRS     0x0b
144 #define LDAP_OPT_CACHE_FN_PTRS  0x0d
145 #define LDAP_OPT_CACHE_STRATEGY 0x0e
146 #define LDAP_OPT_CACHE_ENABLE   0x0f
147 #define LDAP_OPT_REFERRAL_HOP_LIMIT     0x10
148 #define LDAP_OPT_PROTOCOL_VERSION       0x11
149 #define LDAP_OPT_SERVER_CONTROLS        0x12
150 #define LDAP_OPT_CLIENT_CONTROLS        0x13
151 #define LDAP_OPT_API_FEATURE_INFO       0x15
152 #define LDAP_OPT_HOST_NAME      0x30
153 #define LDAP_OPT_ERROR_NUMBER   0x31
154 #define LDAP_OPT_ERROR_STRING   0x32
155 #define LDAP_OPT_SERVER_ERROR   0x33
156 #define LDAP_OPT_SERVER_EXT_ERROR       0x34
157 #define LDAP_OPT_PING_KEEP_ALIVE        0x36
158 #define LDAP_OPT_PING_WAIT_TIME 0x37
159 #define LDAP_OPT_PING_LIMIT     0x38
160 #define LDAP_OPT_DNSDOMAIN_NAME 0x3b
161 #define LDAP_OPT_GETDSNAME_FLAGS        0x3d
162 #define LDAP_OPT_HOST_REACHABLE 0x3e
163 #define LDAP_OPT_PROMPT_CREDENTIALS     0x3f
164 #define LDAP_OPT_TCP_KEEPALIVE  0x40
165 #define LDAP_OPT_REFERRAL_CALLBACK      0x70
166 #define LDAP_OPT_CLIENT_CERTIFICATE     0x80
167 #define LDAP_OPT_SERVER_CERTIFICATE     0x81
168 #define LDAP_OPT_AUTO_RECONNECT 0x91
169 #define LDAP_OPT_SSPI_FLAGS     0x92
170 #define LDAP_OPT_SSL_INFO       0x93
171 #define LDAP_OPT_REF_DEREF_CONN_PER_MSG 0x94
172 #define LDAP_OPT_SIGN   0x95
173 #define LDAP_OPT_ENCRYPT        0x96
174 #define LDAP_OPT_SASL_METHOD    0x97
175 #define LDAP_OPT_AREC_EXCLUSIVE 0x98
176 #define LDAP_OPT_SECURITY_CONTEXT       0x99
177 #define LDAP_OPT_ROOTDSE_CACHE  0x9a
178 #define LDAP_OPT_VERSION        LDAP_OPT_PROTOCOL_VERSION
179 #define LDAP_OPT_TLS    LDAP_OPT_SSL
180 #define LDAP_OPT_TLS_INFO       LDAP_OPT_SSL_INFO
181 #define LDAP_DEREF_NEVER        0x00
182 #define LDAP_DEREF_SEARCHING    0x01
183 #define LDAP_DEREF_FINDING      0x02
184 #define LDAP_DEREF_ALWAYS       0x03
185 #define LDAP_NO_LIMIT   0
186 #define LDAP_CONTROL_REFERRALS  "1.2.840.113556.1.4.616"
187 #define LDAP_CONTROL_REFERRALS_W        L"1.2.840.113556.1.4.616"
188 #define LDAP_CHASE_SUBORDINATE_REFERRALS        0x20U
189 #define LDAP_CHASE_EXTERNAL_REFERRALS   0x40U
190 #define LDAP_SCOPE_DEFAULT      -1
191 #define LDAP_SCOPE_BASE 0x0000
192 #define LDAP_SCOPE_ONELEVEL     0x0001
193 #define LDAP_SCOPE_SUBTREE      0x0002
194 #define LDAP_MOD_ADD    0x00
195 #define LDAP_MOD_DELETE 0x01
196 #define LDAP_MOD_REPLACE        0x02
197 #define LDAP_MOD_BVALUES        0x80
198 #define LDAP_RES_BIND   0x61
199 #define LDAP_RES_SEARCH_ENTRY   0x64
200 #define LDAP_RES_SEARCH_RESULT  0x65
201 #define LDAP_RES_MODIFY 0x67
202 #define LDAP_RES_ADD    0x69
203 #define LDAP_RES_DELETE 0x6b
204 #define LDAP_RES_MODRDN 0x6d
205 #define LDAP_RES_COMPARE        0x6f
206 #define LDAP_RES_SEARCH_REFERENCE       0x73
207 #define LDAP_RES_EXTENDED       0x78
208 #define LDAP_RES_ANY    (-1L)
209 #define LDAP_MSG_ONE    0x00
210 #define LDAP_MSG_ALL    0x01
211 #define LDAP_MSG_RECEIVED       0x02
212 #define LDAP_SERVER_SORT_OID    "1.2.840.113556.1.4.473"
213 #define LDAP_SERVER_SORT_OID_W  L"1.2.840.113556.1.4.473"
214 #define LDAP_SERVER_RESP_SORT_OID       "1.2.840.113556.1.4.474"
215 #define LDAP_SERVER_RESP_SORT_OID_W     L"1.2.840.113556.1.4.474"
216 #define LDAP_PAGED_RESULT_OID_STRING    "1.2.840.113556.1.4.319"
217 #define LDAP_PAGED_RESULT_OID_STRING_W  L"1.2.840.113556.1.4.319"
218 #define LDAP_CONTROL_VLVREQUEST "2.16.840.1.113730.3.4.9"
219 #define LDAP_CONTROL_VLVREQUEST_W       L"2.16.840.1.113730.3.4.9"
220 #define LDAP_CONTROL_VLVRESPONSE        "2.16.840.1.113730.3.4.10"
221 #define LDAP_CONTROL_VLVRESPONSE_W      L"2.16.840.1.113730.3.4.10"
222 #define LDAP_START_TLS_OID      "1.3.6.1.4.1.1466.20037"
223 #define LDAP_START_TLS_OID_W    L"1.3.6.1.4.1.1466.20037"
224 #define LDAP_TTL_EXTENDED_OP_OID        "1.3.6.1.4.1.1466.101.119.1"
225 #define LDAP_TTL_EXTENDED_OP_OID_W      L"1.3.6.1.4.1.1466.101.119.1"
226 #define LDAP_AUTH_NONE  0x00U
227 #define LDAP_AUTH_SIMPLE        0x80U
228 #define LDAP_AUTH_SASL  0x83U
229 #define LDAP_AUTH_OTHERKIND     0x86U
230 #define LDAP_AUTH_EXTERNAL      (LDAP_AUTH_OTHERKIND | 0x20U)
231 #define LDAP_AUTH_SICILY        (LDAP_AUTH_OTHERKIND | 0x200U)
232 #define LDAP_AUTH_NEGOTIATE     (LDAP_AUTH_OTHERKIND | 0x400U)
233 #define LDAP_AUTH_MSN   (LDAP_AUTH_OTHERKIND | 0x800U)
234 #define LDAP_AUTH_NTLM  (LDAP_AUTH_OTHERKIND | 0x1000U)
235 #define LDAP_AUTH_DIGEST        (LDAP_AUTH_OTHERKIND | 0x4000U)
236 #define LDAP_AUTH_DPA   (LDAP_AUTH_OTHERKIND | 0x2000U)
237 #define LDAP_AUTH_SSPI  LDAP_AUTH_NEGOTIATE
238 #define LDAP_FILTER_AND 0xa0
239 #define LDAP_FILTER_OR  0xa1
240 #define LDAP_FILTER_NOT 0xa2
241 #define LDAP_FILTER_EQUALITY    0xa3
242 #define LDAP_FILTER_SUBSTRINGS  0xa4
243 #define LDAP_FILTER_GE  0xa5
244 #define LDAP_FILTER_LE  0xa6
245 #define LDAP_FILTER_APPROX      0xa8
246 #define LDAP_FILTER_EXTENSIBLE  0xa9
247 #define LDAP_FILTER_PRESENT     0x87
248 #define LDAP_SUBSTRING_INITIAL  0x80
249 #define LDAP_SUBSTRING_ANY      0x81
250 #define LDAP_SUBSTRING_FINAL    0x82
251
252 typedef struct ldap {
253         char Reserved[76];
254         PCHAR ld_host;
255         ULONG ld_version;
256         UCHAR ld_lberoptions;
257         int ld_deref;
258         int ld_timelimit;
259         int ld_sizelimit;
260         int ld_errno;
261         PCHAR ld_matched;
262         PCHAR ld_error;
263 } LDAP, *PLDAP;
264 typedef struct ldapmsg {
265         ULONG lm_msgid;
266         ULONG lm_msgtype;
267         BerElement *lm_ber;
268         struct ldapmsg *lm_chain;
269         struct ldapmsg *lm_next;
270         ULONG lm_time;
271 } LDAPMessage, *PLDAPMessage;
272 typedef struct l_timeval {
273         LONG tv_sec;
274         LONG tv_usec;
275 } LDAP_TIMEVAL, *PLDAP_TIMEVAL;
276 typedef struct ldapapiinfoA {
277         int ldapai_info_version;
278         int ldapai_api_version;
279         int ldapai_protocol_version;
280         char **ldapai_extensions;
281         char *ldapai_vendor_name;
282         int ldapai_vendor_version;
283 } LDAPAPIInfoA, *PLDAPAPIInfoA;
284 typedef struct ldapapiinfoW {
285         int ldapai_info_version;
286         int ldapai_api_version;
287         int ldapai_protocol_version;
288         PWCHAR *ldapai_extensions;
289         PWCHAR ldapai_vendor_name;
290         int ldapai_vendor_version;
291 } LDAPAPIInfoW, *PLDAPAPIInfoW;
292 typedef struct ldap_apifeature_infoA {
293         int ldapaif_info_version;
294         char *ldapaif_name;
295         int ldapaif_version;
296 } LDAPAPIFeatureInfoA, *PLDAPAPIFeatureInfoA;
297 typedef struct ldap_apifeature_infoW {
298         int ldapaif_info_version;
299         PWCHAR ldapaif_name;
300         int ldapaif_version;
301 } LDAPAPIFeatureInfoW, *PLDAPAPIFeatureInfoW;
302 typedef struct ldapcontrolA {
303         PCHAR ldctl_oid;
304         BerValue ldctl_value;
305         BOOLEAN ldctl_iscritical;
306 } LDAPControlA, *PLDAPControlA;
307 typedef struct ldapcontrolW {
308         PWCHAR ldctl_oid;
309         BerValue ldctl_value;
310         BOOLEAN ldctl_iscritical;
311 } LDAPControlW, *PLDAPControlW;
312 typedef union mod_vals_uA {
313         PCHAR *modv_strvals;
314         BerValue **modv_bvals;
315 } mod_vals_u_tA;
316 typedef union mod_vals_uW {
317         PWCHAR *modv_strvals;
318         BerValue **modv_bvals;
319 } mod_vals_u_tW;
320 typedef struct ldapmodA {
321         ULONG mod_op;
322         PCHAR mod_type;
323         mod_vals_u_tA mod_vals;
324 } LDAPModA, *PLDAPModA;
325 typedef struct ldapmodW {
326         ULONG mod_op;
327         PWCHAR mod_type;
328         mod_vals_u_tW mod_vals;
329 } LDAPModW, *PLDAPModW;
330
331 #define mod_values      mod_vals.modv_strvals
332 #define mod_bvalues     mod_vals.modv_bvals
333
334 typedef struct ldapsearch LDAPSearch, *PLDAPSearch;
335 typedef struct ldapsortkeyA {
336         PCHAR sk_attrtype;
337         PCHAR sk_matchruleoid;
338         BOOLEAN sk_reverseorder;
339 } LDAPSortKeyA, *PLDAPSortKeyA;
340 typedef struct ldapsortkeyW {
341         PWCHAR sk_attrtype;
342         PWCHAR sk_matchruleoid;
343         BOOLEAN sk_reverseorder;
344 } LDAPSortKeyW, *PLDAPSortKeyW;
345 typedef ULONG (__cdecl QUERYFORCONNECTION)(PLDAP,PLDAP,PWCHAR,PCHAR,ULONG,PVOID,PVOID,PLDAP*);
346 typedef BOOLEAN (__cdecl NOTIFYOFNEWCONNECTION)(PLDAP,PLDAP,PWCHAR,PCHAR,PLDAP,ULONG,PVOID,PVOID,ULONG);
347 typedef ULONG (__cdecl DEREFERENCECONNECTION)(PLDAP,PLDAP);
348 typedef BOOLEAN (__cdecl QUERYCLIENTCERT)(PLDAP,PSecPkgContext_IssuerListInfoEx,PCCERT_CONTEXT*);
349 typedef struct LdapReferralCallback {
350         ULONG SizeOfCallbacks;
351         QUERYFORCONNECTION *QueryForConnection;
352         NOTIFYOFNEWCONNECTION *NotifyRoutine;
353         DEREFERENCECONNECTION *DereferenceRoutine;
354 } LDAP_REFERRAL_CALLBACK, *PLDAP_REFERRAL_CALLBACK;
355 typedef struct ldapvlvinfo {
356         int ldvlv_version;
357         unsigned long ldvlv_before_count;
358         unsigned long ldvlv_after_count;
359         unsigned long ldvlv_offset;
360         unsigned long ldvlv_count;
361         BerValue *ldvlv_attrvalue;
362         BerValue *ldvlv_context;
363         void *ldvlv_extradata;
364 } LDAPVLVInfo;
365
366 /*
367  * Under Microsoft WinLDAP the function ldap_error is only stub.
368  * This macro uses LDAP structure to get error string and pass it to the user.
369  */
370 #define ldap_perror(handle,message) printf("%s: %s\n", message, handle->ld_error);
371
372 WINLDAPAPI PLDAP ldap_initA(PCHAR,ULONG);
373 WINLDAPAPI PLDAP ldap_initW(PWCHAR,ULONG);
374 WINLDAPAPI PLDAP ldap_openA(const PCHAR,ULONG);
375 WINLDAPAPI PLDAP ldap_openW(const PWCHAR,ULONG);
376 WINLDAPAPI PLDAP cldap_openA(const PCHAR,ULONG);
377 WINLDAPAPI PLDAP cldap_openW(const PWCHAR,ULONG);
378 WINLDAPAPI ULONG ldap_connect(LDAP*,struct l_timeval*);
379 WINLDAPAPI PLDAP ldap_sslinitA(PCHAR,ULONG,int);
380 WINLDAPAPI PLDAP ldap_sslinitW(PWCHAR,ULONG,int);
381 WINLDAPAPI ULONG ldap_start_tls_sA(LDAP*,PLDAPControlA*,PLDAPControlA*);
382 WINLDAPAPI ULONG ldap_start_tls_sW(LDAP*,PLDAPControlW*,PLDAPControlW*);
383 WINLDAPAPI BOOLEAN ldap_stop_tls_s(LDAP*);
384 WINLDAPAPI ULONG ldap_get_optionA(LDAP*,int,void*);
385 WINLDAPAPI ULONG ldap_get_optionW(LDAP*,int,void*);
386 WINLDAPAPI ULONG ldap_set_optionA(LDAP*,int,const void*);
387 WINLDAPAPI ULONG ldap_set_optionW(LDAP*,int,const void*);
388 WINLDAPAPI ULONG ldap_control_freeA(LDAPControlA*);
389 WINLDAPAPI ULONG ldap_control_freeW(LDAPControlW*);
390 WINLDAPAPI ULONG ldap_controls_freeA(LDAPControlA**);
391 WINLDAPAPI ULONG ldap_controls_freeW(LDAPControlW**);
392 WINLDAPAPI ULONG ldap_free_controlsA(LDAPControlA**);
393 WINLDAPAPI ULONG ldap_free_controlsW(LDAPControlW**);
394 WINLDAPAPI ULONG ldap_sasl_bindA(LDAP*,const PCHAR, const PCHAR,const BERVAL*,PLDAPControlA*,PLDAPControlA*,int*);
395 WINLDAPAPI ULONG ldap_sasl_bindW(LDAP*,const PWCHAR, const PWCHAR,const BERVAL*,PLDAPControlW*,PLDAPControlW*,int*);
396 WINLDAPAPI ULONG ldap_sasl_bind_sA(LDAP*,const PCHAR,const PCHAR,const BERVAL*,PLDAPControlA*,PLDAPControlA*,PBERVAL*);
397 WINLDAPAPI ULONG ldap_sasl_bind_sW(LDAP*,const PWCHAR,const PWCHAR,const BERVAL*,PLDAPControlW*,PLDAPControlW*,PBERVAL*);
398 WINLDAPAPI ULONG ldap_simple_bindA(LDAP*,const PCHAR,const PCHAR);
399 WINLDAPAPI ULONG ldap_simple_bindW(LDAP*,const PWCHAR,const PWCHAR);
400 WINLDAPAPI ULONG ldap_simple_bind_sA(LDAP*,const PCHAR,const PCHAR);
401 WINLDAPAPI ULONG ldap_simple_bind_sW(LDAP*,const PWCHAR,const PWCHAR);
402 WINLDAPAPI ULONG ldap_bindA(LDAP*,const PCHAR,const PCHAR,ULONG) _WINLDAP_DEPRECATED;
403 WINLDAPAPI ULONG ldap_bindW(LDAP*,const PWCHAR,const PWCHAR,ULONG) _WINLDAP_DEPRECATED;
404 WINLDAPAPI ULONG ldap_bind_sA(LDAP*,const PCHAR,const PCHAR,ULONG) _WINLDAP_DEPRECATED;
405 WINLDAPAPI ULONG ldap_bind_sW(LDAP*,const PWCHAR,const PWCHAR,ULONG) _WINLDAP_DEPRECATED;
406 WINLDAPAPI ULONG ldap_unbind(LDAP*);
407 WINLDAPAPI ULONG ldap_unbind_s(LDAP*);
408 WINLDAPAPI ULONG ldap_search_extA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,PLDAPControlW*,PLDAPControlW*,ULONG,ULONG,ULONG*);
409 WINLDAPAPI ULONG ldap_search_extW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,PLDAPControlW*,PLDAPControlW*,ULONG,ULONG,ULONG*);
410 WINLDAPAPI ULONG ldap_search_ext_sA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,PLDAPControlA*,PLDAPControlA*,struct l_timeval*,ULONG,LDAPMessage**);
411 WINLDAPAPI ULONG ldap_search_ext_sW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,PLDAPControlW*,PLDAPControlW*,struct l_timeval*,ULONG,LDAPMessage**);
412 WINLDAPAPI ULONG ldap_searchA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG);
413 WINLDAPAPI ULONG ldap_searchW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG);
414 WINLDAPAPI ULONG ldap_search_sA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,LDAPMessage**);
415 WINLDAPAPI ULONG ldap_search_sW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,LDAPMessage**);
416 WINLDAPAPI ULONG ldap_search_stA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,struct l_timeval*,LDAPMessage**);
417 WINLDAPAPI ULONG ldap_search_stW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,struct l_timeval*,LDAPMessage**);
418 WINLDAPAPI ULONG ldap_compare_extA(LDAP*,const PCHAR,const PCHAR,PCHAR,struct berval*,PLDAPControlA*,PLDAPControlA*,ULONG*);
419 WINLDAPAPI ULONG ldap_compare_extW(LDAP*,const PWCHAR,const PWCHAR,PWCHAR,struct berval*,PLDAPControlW*,PLDAPControlW*,ULONG*);
420 WINLDAPAPI ULONG ldap_compare_ext_sA(LDAP*,const PCHAR,const PCHAR,const PCHAR,struct berval*,PLDAPControlA*,PLDAPControlA*);
421 WINLDAPAPI ULONG ldap_compare_ext_sW(LDAP*,const PWCHAR,const PWCHAR,const PWCHAR,struct berval*,PLDAPControlW*,PLDAPControlW*);
422 WINLDAPAPI ULONG ldap_compareA(LDAP*,const PCHAR,const PCHAR,PCHAR);
423 WINLDAPAPI ULONG ldap_compareW(LDAP*,const PWCHAR,const PWCHAR,PWCHAR);
424 WINLDAPAPI ULONG ldap_compare_sA(LDAP*,const PCHAR,const PCHAR,PCHAR);
425 WINLDAPAPI ULONG ldap_compare_sW(LDAP*,const PWCHAR,const PWCHAR,PWCHAR);
426 WINLDAPAPI ULONG ldap_modify_extA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*,ULONG*);
427 WINLDAPAPI ULONG ldap_modify_extW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*,ULONG*);
428 WINLDAPAPI ULONG ldap_modify_ext_sA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*);
429 WINLDAPAPI ULONG ldap_modify_ext_sW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*);
430 WINLDAPAPI ULONG ldap_modifyA(LDAP*,const PCHAR,LDAPModA*[]);
431 WINLDAPAPI ULONG ldap_modifyW(LDAP*,const PWCHAR,LDAPModW*[]);
432 WINLDAPAPI ULONG ldap_modify_sA(LDAP*,const PCHAR,LDAPModA*[]);
433 WINLDAPAPI ULONG ldap_modify_sW(LDAP*,const PWCHAR,LDAPModW*[]);
434 WINLDAPAPI ULONG ldap_rename_extA(LDAP*,const PCHAR,const PCHAR,const PCHAR,INT,PLDAPControlA*,PLDAPControlA*,ULONG*);
435 WINLDAPAPI ULONG ldap_rename_extW(LDAP*,const PWCHAR,const PWCHAR,const PWCHAR,INT,PLDAPControlW*,PLDAPControlW*,ULONG*);
436 WINLDAPAPI ULONG ldap_rename_ext_sA(LDAP*,const PCHAR,const PCHAR,const PCHAR,INT,PLDAPControlA*,PLDAPControlA*);
437 WINLDAPAPI ULONG ldap_rename_ext_sW(LDAP*,const PWCHAR,const PWCHAR,const PWCHAR,INT,PLDAPControlW*,PLDAPControlW*);
438 WINLDAPAPI ULONG ldap_modrdnA(LDAP*,PCHAR,PCHAR) _WINLDAP_DEPRECATED;
439 WINLDAPAPI ULONG ldap_modrdnW(LDAP*,PWCHAR,PWCHAR) _WINLDAP_DEPRECATED;
440 WINLDAPAPI ULONG ldap_modrdn_sA(LDAP*,PCHAR,PCHAR) _WINLDAP_DEPRECATED;
441 WINLDAPAPI ULONG ldap_modrdn_sW(LDAP*,PWCHAR,PWCHAR) _WINLDAP_DEPRECATED;
442 WINLDAPAPI ULONG ldap_modrdn2A(LDAP*,PCHAR,PCHAR,INT) _WINLDAP_DEPRECATED;
443 WINLDAPAPI ULONG ldap_modrdn2W(LDAP*,PWCHAR,PWCHAR,INT) _WINLDAP_DEPRECATED;
444 WINLDAPAPI ULONG ldap_modrdn2_sA(LDAP*,PCHAR,PCHAR,INT) _WINLDAP_DEPRECATED;
445 WINLDAPAPI ULONG ldap_modrdn2_sW(LDAP*,PWCHAR,PWCHAR,INT) _WINLDAP_DEPRECATED;
446 WINLDAPAPI ULONG ldap_add_extA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*,ULONG*);
447 WINLDAPAPI ULONG ldap_add_extW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*,ULONG*);
448 WINLDAPAPI ULONG ldap_add_ext_sA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*);
449 WINLDAPAPI ULONG ldap_add_ext_sW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*);
450 WINLDAPAPI ULONG ldap_addA(LDAP*,const PCHAR,LDAPModA*[]);
451 WINLDAPAPI ULONG ldap_addW(LDAP*,const PWCHAR,LDAPModW*[]);
452 WINLDAPAPI ULONG ldap_add_sA(LDAP*,const PCHAR,LDAPModA*[]);
453 WINLDAPAPI ULONG ldap_add_sW(LDAP*,const PWCHAR,LDAPModW*[]);
454 WINLDAPAPI ULONG ldap_delete_extA(LDAP*,const PCHAR,PLDAPControlA*,PLDAPControlA*,ULONG*);
455 WINLDAPAPI ULONG ldap_delete_extW(LDAP*,const PWCHAR,PLDAPControlW*,PLDAPControlW*,ULONG*);
456 WINLDAPAPI ULONG ldap_delete_ext_sA(LDAP*,const PCHAR,PLDAPControlA*,PLDAPControlA*);
457 WINLDAPAPI ULONG ldap_delete_ext_sW(LDAP*,const PWCHAR,PLDAPControlW*,PLDAPControlW*);
458 WINLDAPAPI ULONG ldap_deleteA(LDAP*,const PCHAR);
459 WINLDAPAPI ULONG ldap_deleteW(LDAP*,const PWCHAR);
460 WINLDAPAPI ULONG ldap_delete_sA(LDAP*,const PCHAR);
461 WINLDAPAPI ULONG ldap_delete_sW(LDAP*,const PWCHAR);
462 WINLDAPAPI ULONG ldap_extended_operationA(LDAP*,const PCHAR,const struct berval*,PLDAPControlA*,PLDAPControlA*,ULONG*);
463 WINLDAPAPI ULONG ldap_extended_operationW(LDAP*,const PWCHAR,const struct berval*,PLDAPControlW*,PLDAPControlW*,ULONG*);
464 WINLDAPAPI ULONG ldap_extended_operation_sA(LDAP*,const PCHAR,const struct berval*,PLDAPControlA*,PLDAPControlA*,PCHAR*,struct berval**);
465 WINLDAPAPI ULONG ldap_extended_operation_sW(LDAP*,const PWCHAR,const struct berval*,PLDAPControlW*,PLDAPControlW*,PWCHAR*,struct berval**);
466 WINLDAPAPI ULONG ldap_close_extended_op(LDAP*,ULONG);
467 WINLDAPAPI ULONG ldap_abandon(LDAP*,ULONG);
468 WINLDAPAPI ULONG ldap_result(LDAP*,ULONG,ULONG,struct l_timeval*,LDAPMessage**);
469 WINLDAPAPI ULONG ldap_msgfree(LDAPMessage*);
470 WINLDAPAPI ULONG ldap_parse_resultA(LDAP*,LDAPMessage*,ULONG*,PCHAR*,PCHAR*,PCHAR**,PLDAPControlA**,BOOLEAN);
471 WINLDAPAPI ULONG ldap_parse_resultW(LDAP*,LDAPMessage*,ULONG*,PWCHAR*,PWCHAR*,PWCHAR**,PLDAPControlW**,BOOLEAN);
472 WINLDAPAPI ULONG ldap_parse_extended_resultA(LDAP,LDAPMessage*,PCHAR*,struct berval**,BOOLEAN);
473 WINLDAPAPI ULONG ldap_parse_extended_resultW(LDAP,LDAPMessage*,PWCHAR*,struct berval**,BOOLEAN);
474 WINLDAPAPI PCHAR ldap_err2stringA(ULONG);
475 WINLDAPAPI PWCHAR ldap_err2stringW(ULONG);
476 WINLDAPAPI ULONG LdapGetLastError(void);
477 WINLDAPAPI ULONG LdapMapErrorToWin32(ULONG);
478 WINLDAPAPI ULONG ldap_result2error(LDAP*,LDAPMessage*,ULONG);
479 WINLDAPAPI PLDAPMessage ldap_first_entry(LDAP*,LDAPMessage*);
480 WINLDAPAPI PLDAPMessage ldap_next_entry(LDAP*,LDAPMessage*);
481 WINLDAPAPI PLDAPMessage ldap_first_reference(LDAP*,LDAPMessage*);
482 WINLDAPAPI PLDAPMessage ldap_next_reference(LDAP*,LDAPMessage*);
483 WINLDAPAPI ULONG ldap_count_entries(LDAP*,LDAPMessage*);
484 WINLDAPAPI ULONG ldap_count_references(LDAP*,LDAPMessage*);
485 WINLDAPAPI PCHAR ldap_first_attributeA(LDAP*,LDAPMessage*,BerElement**);
486 WINLDAPAPI PWCHAR ldap_first_attributeW(LDAP*,LDAPMessage*,BerElement**);
487 WINLDAPAPI PCHAR ldap_next_attributeA(LDAP*,LDAPMessage*,BerElement*);
488 WINLDAPAPI PWCHAR ldap_next_attributeW(LDAP*,LDAPMessage*,BerElement*);
489 WINLDAPAPI VOID ldap_memfreeA(PCHAR);
490 WINLDAPAPI VOID ldap_memfreeW(PWCHAR);
491 WINLDAPAPI PCHAR* ldap_get_valuesA(LDAP*,LDAPMessage*,const PCHAR);
492 WINLDAPAPI PWCHAR* ldap_get_valuesW(LDAP*,LDAPMessage*,const PWCHAR);
493 WINLDAPAPI BerValue** ldap_get_values_lenA(LDAP*,LDAPMessage*,const PCHAR);
494 WINLDAPAPI BerValue** ldap_get_values_lenW(LDAP*,LDAPMessage*,const PWCHAR);
495 WINLDAPAPI ULONG ldap_count_valuesA(PCHAR*);
496 WINLDAPAPI ULONG ldap_count_valuesW(PWCHAR*);
497 WINLDAPAPI ULONG ldap_count_values_len(struct berval**);
498 WINLDAPAPI ULONG ldap_value_freeA(PCHAR*);
499 WINLDAPAPI ULONG ldap_value_freeW(PWCHAR*);
500 WINLDAPAPI ULONG ldap_value_free_len(struct berval**);
501 WINLDAPAPI PCHAR ldap_get_dnA(LDAP*,LDAPMessage*);
502 WINLDAPAPI PWCHAR ldap_get_dnW(LDAP*,LDAPMessage*);
503 WINLDAPAPI PCHAR ldap_explode_dnA(PCHAR,ULONG);
504 WINLDAPAPI PWCHAR ldap_explode_dnW(PWCHAR,ULONG);
505 WINLDAPAPI PCHAR ldap_dn2ufnA(PCHAR);
506 WINLDAPAPI PWCHAR ldap_dn2ufnW(PWCHAR);
507 WINLDAPAPI ULONG ldap_ufn2dnA(const PCHAR,PCHAR*);
508 WINLDAPAPI ULONG ldap_ufn2dnW(const PWCHAR,PWCHAR*);
509 WINLDAPAPI ULONG ldap_parse_referenceA(LDAP*,LDAPMessage*,PCHAR**);
510 WINLDAPAPI ULONG ldap_parse_referenceW(LDAP*,LDAPMessage*,PWCHAR**);
511 WINLDAPAPI ULONG ldap_check_filterA(LDAP*,PCHAR);
512 WINLDAPAPI ULONG ldap_check_filterW(LDAP*,PWCHAR);
513 WINLDAPAPI ULONG ldap_create_page_controlA(PLDAP,ULONG,struct berval*,UCHAR,PLDAPControlA*);
514 WINLDAPAPI ULONG ldap_create_page_controlW(PLDAP,ULONG,struct berval*,UCHAR,PLDAPControlW*);
515 WINLDAPAPI ULONG ldap_create_sort_controlA(PLDAP,PLDAPSortKeyA*,UCHAR,PLDAPControlA*);
516 WINLDAPAPI ULONG ldap_create_sort_controlW(PLDAP,PLDAPSortKeyW*,UCHAR,PLDAPControlW*);
517 WINLDAPAPI INT ldap_create_vlv_controlA(LDAP*,LDAPVLVInfo*,UCHAR,LDAPControlA**);
518 WINLDAPAPI INT ldap_create_vlv_controlW(LDAP*,LDAPVLVInfo*,UCHAR,LDAPControlW**);
519 WINLDAPAPI ULONG ldap_encode_sort_controlA(PLDAP,PLDAPSortKeyA*,PLDAPControlA,BOOLEAN);
520 WINLDAPAPI ULONG ldap_encode_sort_controlW(PLDAP,PLDAPSortKeyW*,PLDAPControlW,BOOLEAN);
521 WINLDAPAPI ULONG ldap_escape_filter_elementA(PCHAR,ULONG,PCHAR,ULONG);
522 WINLDAPAPI ULONG ldap_escape_filter_elementW(PWCHAR,ULONG,PWCHAR,ULONG);
523 WINLDAPAPI ULONG ldap_get_next_page(PLDAP,PLDAPSearch,ULONG,ULONG*);
524 WINLDAPAPI ULONG ldap_get_next_page_s(PLDAP,PLDAPSearch,struct l_timeval*,ULONG,ULONG*,LDAPMessage**);
525 WINLDAPAPI ULONG ldap_get_paged_count(PLDAP,PLDAPSearch,ULONG*,PLDAPMessage);
526 WINLDAPAPI ULONG ldap_parse_page_controlA(PLDAP,PLDAPControlA*,ULONG*,struct berval**);
527 WINLDAPAPI ULONG ldap_parse_page_controlW(PLDAP,PLDAPControlW*,ULONG*,struct berval**);
528 WINLDAPAPI ULONG ldap_parse_sort_controlA(PLDAP,PLDAPControlA*,ULONG*,PCHAR*);
529 WINLDAPAPI ULONG ldap_parse_sort_controlW(PLDAP,PLDAPControlW*,ULONG*,PWCHAR*);
530 WINLDAPAPI INT ldap_parse_vlv_controlA(LDAP*,LDAPControlA**,unsigned long*,unsigned long*,struct berval**,int*);
531 WINLDAPAPI INT ldap_parse_vlv_controlW(LDAP*,LDAPControlW**,unsigned long*,unsigned long*,struct berval**,int*);
532 WINLDAPAPI PLDAPSearch ldap_search_init_pageA(PLDAP,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,PLDAPControlA*,PLDAPControlA*,ULONG,ULONG,PLDAPSortKeyA*);
533 WINLDAPAPI PLDAPSearch ldap_search_init_pageW(PLDAP,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,PLDAPControlW*,PLDAPControlW*,ULONG,ULONG,PLDAPSortKeyW*);
534 WINLDAPAPI ULONG ldap_search_abandon_page(PLDAP,PLDAPSearch);
535 WINLDAPAPI LDAP ldap_conn_from_msg(LDAP*,LDAPMessage*);
536 WINLDAPAPI INT LdapUnicodeToUTF8(LPCWSTR,int,LPSTR,int);
537 WINLDAPAPI INT LdapUTF8ToUnicode(LPCSTR,int,LPWSTR,int);
538
539 #ifdef UNICODE
540 #define LDAPControl LDAPControlW
541 #define PLDAPControl PLDAPControlW
542 #define LDAPMod LDAPModW
543 #define PLDAPMod LDAPModW
544 #define LDAPSortKey LDAPSortKeyW
545 #define PLDAPSortKey PLDAPSortKeyW
546 #define LDAPAPIInfo LDAPAPIInfoW
547 #define PLDAPAPIInfo PLDAPAPIInfoW
548 #define LDAPAPIFeatureInfo LDAPAPIFeatureInfoW
549 #define PLDAPAPIFeatureInfo PLDAPAPIFeatureInfoW
550 #define cldap_open cldap_openW
551 #define ldap_open ldap_openW
552 #define ldap_bind ldap_bindW
553 #define ldap_bind_s ldap_bind_sW
554 #define ldap_simple_bind ldap_simple_bindW
555 #define ldap_simple_bind_s ldap_simple_bind_sW
556 #define ldap_sasl_bind ldap_sasl_bindW
557 #define ldap_sasl_bind_s ldap_sasl_bind_sW
558 #define ldap_init ldap_initW
559 #define ldap_sslinit ldap_sslinitW
560 #define ldap_get_option ldap_get_optionW
561 #define ldap_set_option ldap_set_optionW
562 #define ldap_start_tls_s ldap_start_tls_sW
563 #define ldap_add ldap_addW
564 #define ldap_add_ext ldap_add_extW
565 #define ldap_add_s ldap_add_sW
566 #define ldap_add_ext_s ldap_add_ext_sW
567 #define ldap_compare ldap_compareW
568 #define ldap_compare_ext ldap_compare_extW
569 #define ldap_compare_s ldap_compare_sW
570 #define ldap_compare_ext_s ldap_compare_ext_sW
571 #define ldap_delete ldap_deleteW
572 #define ldap_delete_ext ldap_delete_extW
573 #define ldap_delete_s ldap_delete_sW
574 #define ldap_delete_ext_s ldap_delete_ext_sW
575 #define ldap_extended_operation_s ldap_extended_operation_sW
576 #define ldap_extended_operation ldap_extended_operationW
577 #define ldap_modify ldap_modifyW
578 #define ldap_modify_ext ldap_modify_extW
579 #define ldap_modify_s ldap_modify_sW
580 #define ldap_modify_ext_s ldap_modify_ext_sW
581 #define ldap_check_filter ldap_check_filterW
582 #define ldap_count_values ldap_count_valuesW
583 #define ldap_create_page_control ldap_create_page_controlW
584 #define ldap_create_sort_control ldap_create_sort_controlW
585 #define ldap_create_vlv_control ldap_create_vlv_controlW
586 #define ldap_encode_sort_control ldap_encode_sort_controlW
587 #define ldap_escape_filter_element ldap_escape_filter_elementW
588 #define ldap_first_attribute ldap_first_attributeW
589 #define ldap_next_attribute ldap_next_attributeW
590 #define ldap_get_values ldap_get_valuesW
591 #define ldap_get_values_len ldap_get_values_lenW
592 #define ldap_parse_extended_result ldap_parse_extended_resultW
593 #define ldap_parse_page_control ldap_parse_page_controlW
594 #define ldap_parse_reference ldap_parse_referenceW
595 #define ldap_parse_result ldap_parse_resultW
596 #define ldap_parse_sort_control ldap_parse_sort_controlW
597 #define ldap_parse_vlv_control ldap_parse_vlv_controlW
598 #define ldap_search ldap_searchW
599 #define ldap_search_s ldap_search_sW
600 #define ldap_search_st ldap_search_stW
601 #define ldap_search_ext ldap_search_extW
602 #define ldap_search_ext_s ldap_search_ext_sW
603 #define ldap_search_init_page ldap_search_init_pageW
604 #define ldap_err2string ldap_err2stringW
605 #define ldap_control_free ldap_control_freeW
606 #define ldap_controls_free ldap_controls_freeW
607 #define ldap_free_controls ldap_free_controlsW
608 #define ldap_memfree ldap_memfreeW
609 #define ldap_value_free ldap_value_freeW
610 #define ldap_dn2ufn ldap_dn2ufnW
611 #define ldap_ufn2dn ldap_ufn2dnW
612 #define ldap_explode_dn ldap_explode_dnW
613 #define ldap_get_dn ldap_get_dnW
614 #define ldap_modrdn ldap_modrdnW
615 #define ldap_modrdn_s ldap_modrdn_sW
616 #define ldap_modrdn2 ldap_modrdn2W
617 #define ldap_modrdn2_s ldap_modrdn2_sW
618 #define ldap_rename ldap_rename_extW
619 #define ldap_rename_s ldap_rename_ext_sW
620 #define ldap_rename_ext ldap_rename_extW
621 #define ldap_rename_ext_s ldap_rename_ext_sW
622 #else
623 #define LDAPControl LDAPControlA
624 #define PLDAPControl PLDAPControlA
625 #define LDAPMod LDAPModA
626 #define PLDAPMod LDAPModA
627 #define LDAPSortKey LDAPSortKeyA
628 #define PLDAPSortKey PLDAPSortKeyA
629 #define LDAPAPIInfo LDAPAPIInfoA
630 #define PLDAPAPIInfo PLDAPAPIInfoA
631 #define LDAPAPIFeatureInfo LDAPAPIFeatureInfoA
632 #define PLDAPAPIFeatureInfo PLDAPAPIFeatureInfoA
633 #define cldap_open cldap_openA
634 #define ldap_open ldap_openA
635 #define ldap_bind ldap_bindA
636 #define ldap_bind_s ldap_bind_sA
637 #define ldap_simple_bind ldap_simple_bindA
638 #define ldap_simple_bind_s ldap_simple_bind_sA
639 #define ldap_sasl_bind ldap_sasl_bindA
640 #define ldap_sasl_bind_s ldap_sasl_bind_sA
641 #define ldap_init ldap_initA
642 #define ldap_sslinit ldap_sslinitA
643 #define ldap_get_option ldap_get_optionA
644 #define ldap_set_option ldap_set_optionA
645 #define ldap_start_tls_s ldap_start_tls_sA
646 #define ldap_add ldap_addA
647 #define ldap_add_ext ldap_add_extA
648 #define ldap_add_s ldap_add_sA
649 #define ldap_add_ext_s ldap_add_ext_sA
650 #define ldap_compare ldap_compareA
651 #define ldap_compare_ext ldap_compare_extA
652 #define ldap_compare_s ldap_compare_sA
653 #define ldap_compare_ext_s ldap_compare_ext_sA
654 #define ldap_delete ldap_deleteA
655 #define ldap_delete_ext ldap_delete_extA
656 #define ldap_delete_s ldap_delete_sA
657 #define ldap_delete_ext_s ldap_delete_ext_sA
658 #define ldap_extended_operation_s ldap_extended_operation_sA
659 #define ldap_extended_operation ldap_extended_operationA
660 #define ldap_modify ldap_modifyA
661 #define ldap_modify_ext ldap_modify_extA
662 #define ldap_modify_s ldap_modify_sA
663 #define ldap_modify_ext_s ldap_modify_ext_sA
664 #define ldap_check_filter ldap_check_filterA
665 #define ldap_count_values ldap_count_valuesA
666 #define ldap_create_page_control ldap_create_page_controlA
667 #define ldap_create_sort_control ldap_create_sort_controlA
668 #define ldap_create_vlv_control ldap_create_vlv_controlA
669 #define ldap_encode_sort_control ldap_encode_sort_controlA
670 #define ldap_escape_filter_element ldap_escape_filter_elementA
671 #define ldap_first_attribute ldap_first_attributeA
672 #define ldap_next_attribute ldap_next_attributeA
673 #define ldap_get_values ldap_get_valuesA
674 #define ldap_get_values_len ldap_get_values_lenA
675 #define ldap_parse_extended_result ldap_parse_extended_resultA
676 #define ldap_parse_page_control ldap_parse_page_controlA
677 #define ldap_parse_reference ldap_parse_referenceA
678 #define ldap_parse_result ldap_parse_resultA
679 #define ldap_parse_sort_control ldap_parse_sort_controlA
680 #define ldap_parse_vlv_control ldap_parse_vlv_controlA
681 #define ldap_search ldap_searchA
682 #define ldap_search_s ldap_search_sA
683 #define ldap_search_st ldap_search_stA
684 #define ldap_search_ext ldap_search_extA
685 #define ldap_search_ext_s ldap_search_ext_sA
686 #define ldap_search_init_page ldap_search_init_pageA
687 #define ldap_err2string ldap_err2stringA
688 #define ldap_control_free ldap_control_freeA
689 #define ldap_controls_free ldap_controls_freeA
690 #define ldap_free_controls ldap_free_controlsA
691 #define ldap_memfree ldap_memfreeA
692 #define ldap_value_free ldap_value_freeA
693 #define ldap_dn2ufn ldap_dn2ufnA
694 #define ldap_ufn2dn ldap_ufn2dnA
695 #define ldap_explode_dn ldap_explode_dnA
696 #define ldap_get_dn ldap_get_dnA
697 #define ldap_modrdn ldap_modrdnA
698 #define ldap_modrdn_s ldap_modrdn_sA
699 #define ldap_modrdn2 ldap_modrdn2A
700 #define ldap_modrdn2_s ldap_modrdn2_sA
701 #define ldap_rename ldap_rename_extA
702 #define ldap_rename_s ldap_rename_ext_sA
703 #define ldap_rename_ext ldap_rename_extA
704 #define ldap_rename_ext_s ldap_rename_ext_sA
705 #endif
706
707 #ifdef __cplusplus
708 }
709 #endif
710
711 #include <poppack.h>
712
713 #endif /* _WINLDAP_H */