| 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 */ |