📄 winldap.h
字号:
#define LDAP_FILTER_OR 0xa1#define LDAP_FILTER_NOT 0xa2#define LDAP_FILTER_EQUALITY 0xa3#define LDAP_FILTER_SUBSTRINGS 0xa4#define LDAP_FILTER_GE 0xa5#define LDAP_FILTER_LE 0xa6#define LDAP_FILTER_APPROX 0xa8#define LDAP_FILTER_EXTENSIBLE 0xa9#define LDAP_FILTER_PRESENT 0x87#define LDAP_SUBSTRING_INITIAL 0x80#define LDAP_SUBSTRING_ANY 0x81#define LDAP_SUBSTRING_FINAL 0x82typedef struct ldap { char Reserved[76]; PCHAR ld_host; ULONG ld_version; UCHAR ld_lberoptions; int ld_deref; int ld_timelimit; int ld_sizelimit; int ld_errno; PCHAR ld_matched; PCHAR ld_error;} LDAP, *PLDAP;typedef struct ldapmsg { ULONG lm_msgid; ULONG lm_msgtype; BerElement *lm_ber; struct ldapmsg *lm_chain; struct ldapmsg *lm_next; ULONG lm_time;} LDAPMessage, *PLDAPMessage;typedef struct l_timeval { LONG tv_sec; LONG tv_usec;} LDAP_TIMEVAL, *PLDAP_TIMEVAL;typedef struct ldapapiinfoA { int ldapai_info_version; int ldapai_api_version; int ldapai_protocol_version; char **ldapai_extensions; char *ldapai_vendor_name; int ldapai_vendor_version;} LDAPAPIInfoA, *PLDAPAPIInfoA;typedef struct ldapapiinfoW { int ldapai_info_version; int ldapai_api_version; int ldapai_protocol_version; PWCHAR *ldapai_extensions; PWCHAR ldapai_vendor_name; int ldapai_vendor_version;} LDAPAPIInfoW, *PLDAPAPIInfoW;typedef struct ldap_apifeature_infoA { int ldapaif_info_version; char *ldapaif_name; int ldapaif_version;} LDAPAPIFeatureInfoA, *PLDAPAPIFeatureInfoA;typedef struct ldap_apifeature_infoW { int ldapaif_info_version; PWCHAR ldapaif_name; int ldapaif_version;} LDAPAPIFeatureInfoW, *PLDAPAPIFeatureInfoW;typedef struct ldapcontrolA { PCHAR ldctl_oid; BerValue ldctl_value; BOOLEAN ldctl_iscritical;} LDAPControlA, *PLDAPControlA;typedef struct ldapcontrolW { PWCHAR ldctl_oid; BerValue ldctl_value; BOOLEAN ldctl_iscritical;} LDAPControlW, *PLDAPControlW;typedef union mod_vals_uA { PCHAR *modv_strvals; BerValue **modv_bvals;} mod_vals_u_tA;typedef union mod_vals_uW { PWCHAR *modv_strvals; BerValue **modv_bvals;} mod_vals_u_tW;typedef struct ldapmodA { ULONG mod_op; PCHAR mod_type; mod_vals_u_tA mod_vals;} LDAPModA, *PLDAPModA;typedef struct ldapmodW { ULONG mod_op; PWCHAR mod_type; mod_vals_u_tW mod_vals;} LDAPModW, *PLDAPModW;#define mod_values mod_vals.modv_strvals#define mod_bvalues mod_vals.modv_bvalstypedef struct ldapsearch LDAPSearch, *PLDAPSearch;typedef struct ldapsortkeyA { PCHAR sk_attrtype; PCHAR sk_matchruleoid; BOOLEAN sk_reverseorder;} LDAPSortKeyA, *PLDAPSortKeyA;typedef struct ldapsortkeyW { PWCHAR sk_attrtype; PWCHAR sk_matchruleoid; BOOLEAN sk_reverseorder;} LDAPSortKeyW, *PLDAPSortKeyW;typedef ULONG (__cdecl QUERYFORCONNECTION)(PLDAP,PLDAP,PWCHAR,PCHAR,ULONG,PVOID,PVOID,PLDAP*);typedef BOOLEAN (__cdecl NOTIFYOFNEWCONNECTION)(PLDAP,PLDAP,PWCHAR,PCHAR,PLDAP,ULONG,PVOID,PVOID,ULONG);typedef ULONG (__cdecl DEREFERENCECONNECTION)(PLDAP,PLDAP);typedef BOOLEAN (__cdecl QUERYCLIENTCERT)(PLDAP,PSecPkgContext_IssuerListInfoEx,PCCERT_CONTEXT*);typedef struct LdapReferralCallback { ULONG SizeOfCallbacks; QUERYFORCONNECTION *QueryForConnection; NOTIFYOFNEWCONNECTION *NotifyRoutine; DEREFERENCECONNECTION *DereferenceRoutine;} LDAP_REFERRAL_CALLBACK, *PLDAP_REFERRAL_CALLBACK;typedef struct ldapvlvinfo { int ldvlv_version; unsigned long ldvlv_before_count; unsigned long ldvlv_after_count; unsigned long ldvlv_offset; unsigned long ldvlv_count; BerValue *ldvlv_attrvalue; BerValue *ldvlv_context; void *ldvlv_extradata;} LDAPVLVInfo;/* * Under Microsoft WinLDAP the function ldap_error is only stub. * This macro uses LDAP structure to get error string and pass it to the user. */#define ldap_perror(handle,message) printf("%s: %s\n", message, handle->ld_error);WINLDAPAPI PLDAP ldap_initA(PCHAR,ULONG);WINLDAPAPI PLDAP ldap_initW(PWCHAR,ULONG);WINLDAPAPI PLDAP ldap_openA(const PCHAR,ULONG);WINLDAPAPI PLDAP ldap_openW(const PWCHAR,ULONG);WINLDAPAPI PLDAP cldap_openA(const PCHAR,ULONG);WINLDAPAPI PLDAP cldap_openW(const PWCHAR,ULONG);WINLDAPAPI ULONG ldap_connect(LDAP*,struct l_timeval*);WINLDAPAPI PLDAP ldap_sslinitA(PCHAR,ULONG,int);WINLDAPAPI PLDAP ldap_sslinitW(PWCHAR,ULONG,int);WINLDAPAPI ULONG ldap_start_tls_sA(LDAP*,PLDAPControlA*,PLDAPControlA*);WINLDAPAPI ULONG ldap_start_tls_sW(LDAP*,PLDAPControlW*,PLDAPControlW*);WINLDAPAPI BOOLEAN ldap_stop_tls_s(LDAP*);WINLDAPAPI ULONG ldap_get_optionA(LDAP*,int,void*);WINLDAPAPI ULONG ldap_get_optionW(LDAP*,int,void*);WINLDAPAPI ULONG ldap_set_optionA(LDAP*,int,const void*);WINLDAPAPI ULONG ldap_set_optionW(LDAP*,int,const void*);WINLDAPAPI ULONG ldap_control_freeA(LDAPControlA*);WINLDAPAPI ULONG ldap_control_freeW(LDAPControlW*);WINLDAPAPI ULONG ldap_controls_freeA(LDAPControlA**);WINLDAPAPI ULONG ldap_controls_freeW(LDAPControlW**);WINLDAPAPI ULONG ldap_free_controlsA(LDAPControlA**);WINLDAPAPI ULONG ldap_free_controlsW(LDAPControlW**);WINLDAPAPI ULONG ldap_sasl_bindA(LDAP*,const PCHAR, const PCHAR,const BERVAL*,PLDAPControlA*,PLDAPControlA*,int*);WINLDAPAPI ULONG ldap_sasl_bindW(LDAP*,const PWCHAR, const PWCHAR,const BERVAL*,PLDAPControlW*,PLDAPControlW*,int*);WINLDAPAPI ULONG ldap_sasl_bind_sA(LDAP*,const PCHAR,const PCHAR,const BERVAL*,PLDAPControlA*,PLDAPControlA*,PBERVAL*);WINLDAPAPI ULONG ldap_sasl_bind_sW(LDAP*,const PWCHAR,const PWCHAR,const BERVAL*,PLDAPControlW*,PLDAPControlW*,PBERVAL*);WINLDAPAPI ULONG ldap_simple_bindA(LDAP*,const PCHAR,const PCHAR);WINLDAPAPI ULONG ldap_simple_bindW(LDAP*,const PWCHAR,const PCHAR);WINLDAPAPI ULONG ldap_simple_bind_sA(LDAP*,const PCHAR,const PCHAR);WINLDAPAPI ULONG ldap_simple_bind_sW(LDAP*,const PWCHAR,const PCHAR);WINLDAPAPI ULONG ldap_bindA(LDAP*,const PCHAR,const PCHAR,ULONG) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_bindW(LDAP*,const PWCHAR,const PCHAR,ULONG) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_bind_sA(LDAP*,const PCHAR,const PCHAR,ULONG) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_bind_sW(LDAP*,const PWCHAR,const PCHAR,ULONG) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_unbind(LDAP*);WINLDAPAPI ULONG ldap_unbind_s(LDAP*);WINLDAPAPI ULONG ldap_search_extA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,PLDAPControlW*,PLDAPControlW*,ULONG,ULONG,ULONG*);WINLDAPAPI ULONG ldap_search_extW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,PLDAPControlW*,PLDAPControlW*,ULONG,ULONG,ULONG*);WINLDAPAPI ULONG ldap_search_ext_sA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,PLDAPControlA*,PLDAPControlA*,struct l_timeval*,ULONG,LDAPMessage**);WINLDAPAPI ULONG ldap_search_ext_sW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,PLDAPControlW*,PLDAPControlW*,struct l_timeval*,ULONG,LDAPMessage**);WINLDAPAPI ULONG ldap_searchA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG);WINLDAPAPI ULONG ldap_searchW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG);WINLDAPAPI ULONG ldap_search_sA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,LDAPMessage**);WINLDAPAPI ULONG ldap_search_sW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,LDAPMessage**);WINLDAPAPI ULONG ldap_search_stA(LDAP*,const PCHAR,ULONG,const PCHAR,PCHAR[],ULONG,struct l_timeval*,LDAPMessage**);WINLDAPAPI ULONG ldap_search_stW(LDAP*,const PWCHAR,ULONG,const PWCHAR,PWCHAR[],ULONG,struct l_timeval*,LDAPMessage**);WINLDAPAPI ULONG ldap_compare_extA(LDAP*,const PCHAR,const PCHAR,PCHAR,struct berval*,PLDAPControlA*,PLDAPControlA*,ULONG*);WINLDAPAPI ULONG ldap_compare_extW(LDAP*,const PWCHAR,const PWCHAR,PWCHAR,struct berval*,PLDAPControlW*,PLDAPControlW*,ULONG*);WINLDAPAPI ULONG ldap_compare_ext_sA(LDAP*,const PCHAR,const PCHAR,const PCHAR,struct berval*,PLDAPControlA*,PLDAPControlA*);WINLDAPAPI ULONG ldap_compare_ext_sW(LDAP*,const PWCHAR,const PWCHAR,const PWCHAR,struct berval*,PLDAPControlW*,PLDAPControlW*);WINLDAPAPI ULONG ldap_compareA(LDAP*,const PCHAR,const PCHAR,PCHAR);WINLDAPAPI ULONG ldap_compareW(LDAP*,const PWCHAR,const PWCHAR,PWCHAR);WINLDAPAPI ULONG ldap_compare_sA(LDAP*,const PCHAR,const PCHAR,PCHAR);WINLDAPAPI ULONG ldap_compare_sW(LDAP*,const PWCHAR,const PWCHAR,PWCHAR);WINLDAPAPI ULONG ldap_modify_extA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*,ULONG*);WINLDAPAPI ULONG ldap_modify_extW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*,ULONG*);WINLDAPAPI ULONG ldap_modify_ext_sA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*);WINLDAPAPI ULONG ldap_modify_ext_sW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*);WINLDAPAPI ULONG ldap_modifyA(LDAP*,const PCHAR,LDAPModA*[]);WINLDAPAPI ULONG ldap_modifyW(LDAP*,const PWCHAR,LDAPModW*[]);WINLDAPAPI ULONG ldap_modify_sA(LDAP*,const PCHAR,LDAPModA*[]);WINLDAPAPI ULONG ldap_modify_sW(LDAP*,const PWCHAR,LDAPModW*[]);WINLDAPAPI ULONG ldap_rename_extA(LDAP*,const PCHAR,const PCHAR,const PCHAR,INT,PLDAPControlA*,PLDAPControlA*,ULONG*);WINLDAPAPI ULONG ldap_rename_extW(LDAP*,const PWCHAR,const PWCHAR,const PWCHAR,INT,PLDAPControlW*,PLDAPControlW*,ULONG*);WINLDAPAPI ULONG ldap_rename_ext_sA(LDAP*,const PCHAR,const PCHAR,const PCHAR,INT,PLDAPControlA*,PLDAPControlA*);WINLDAPAPI ULONG ldap_rename_ext_sW(LDAP*,const PWCHAR,const PWCHAR,const PWCHAR,INT,PLDAPControlW*,PLDAPControlW*);WINLDAPAPI ULONG ldap_modrdnA(LDAP*,PCHAR,PCHAR) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_modrdnW(LDAP*,PWCHAR,PWCHAR) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_modrdn_sA(LDAP*,PCHAR,PCHAR) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_modrdn_sW(LDAP*,PWCHAR,PWCHAR) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_modrdn2A(LDAP*,PCHAR,PCHAR,INT) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_modrdn2W(LDAP*,PWCHAR,PWCHAR,INT) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_modrdn2_sA(LDAP*,PCHAR,PCHAR,INT) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_modrdn2_sW(LDAP*,PWCHAR,PWCHAR,INT) _WINLDAP_DEPRECATED;WINLDAPAPI ULONG ldap_add_extA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*,ULONG*);WINLDAPAPI ULONG ldap_add_extW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*,ULONG*);WINLDAPAPI ULONG ldap_add_ext_sA(LDAP*,const PCHAR,LDAPModA*[],PLDAPControlA*,PLDAPControlA*);WINLDAPAPI ULONG ldap_add_ext_sW(LDAP*,const PWCHAR,LDAPModW*[],PLDAPControlW*,PLDAPControlW*);WINLDAPAPI ULONG ldap_addA(LDAP*,const PCHAR,LDAPModA*[]);WINLDAPAPI ULONG ldap_addW(LDAP*,const PWCHAR,LDAPModW*[]);WINLDAPAPI ULONG ldap_add_sA(LDAP*,const PCHAR,LDAPModA*[]);WINLDAPAPI ULONG ldap_add_sW(LDAP*,const PWCHAR,LDAPModW*[]);WINLDAPAPI ULONG ldap_delete_extA(LDAP*,const PCHAR,PLDAPControlA*,PLDAPControlA*,ULONG*);WINLDAPAPI ULONG ldap_delete_extW(LDAP*,const PWCHAR,PLDAPControlW*,PLDAPControlW*,ULONG*);WINLDAPAPI ULONG ldap_delete_ext_sA(LDAP*,const PCHAR,PLDAPControlA*,PLDAPControlA*);WINLDAPAPI ULONG ldap_delete_ext_sW(LDAP*,const PWCHAR,PLDAPControlW*,PLDAPControlW*);WINLDAPAPI ULONG ldap_deleteA(LDAP*,const PCHAR);WINLDAPAPI ULONG ldap_deleteW(LDAP*,const PWCHAR);WINLDAPAPI ULONG ldap_delete_sA(LDAP*,const PCHAR);WINLDAPAPI ULONG ldap_delete_sW(LDAP*,const PWCHAR);WINLDAPAPI ULONG ldap_extended_operationA(LDAP*,const PCHAR,const struct berval*,PLDAPControlA*,PLDAPControlA*,ULONG*);WINLDAPAPI ULONG ldap_extended_operationW(LDAP*,const PWCHAR,const struct berval*,PLDAPControlW*,PLDAPControlW*,ULONG*);WINLDAPAPI ULONG ldap_extended_operation_sA(LDAP*,const PCHAR,const struct berval*,PLDAPControlA*,PLDAPControlA*,PCHAR*,struct berval**);WINLDAPAPI ULONG ldap_extended_operation_sW(LDAP*,const PWCHAR,const struct berval*,PLDAPControlW*,PLDAPControlW*,PWCHAR*,struct berval**);WINLDAPAPI ULONG ldap_close_extended_op(LDAP*,ULONG);WINLDAPAPI ULONG ldap_abandon(LDAP*,ULONG);WINLDAPAPI ULONG ldap_result(LDAP*,ULONG,ULONG,struct l_timeval*,LDAPMessage**);WINLDAPAPI ULONG ldap_msgfree(LDAPMessage*);WINLDAPAPI ULONG ldap_parse_resultA(LDAP*,LDAPMessage*,ULONG*,PCHAR*,PCHAR*,PCHAR**,PLDAPControlA**,BOOLEAN);WINLDAPAPI ULONG ldap_parse_resultW(LDAP*,LDAPMessage*,ULONG*,PWCHAR*,PWCHAR*,PWCHAR**,PLDAPControlW**,BOOLEAN);WINLDAPAPI ULONG ldap_parse_extended_resultA(LDAP,LDAPMessage*,PCHAR*,struct berval**,BOOLEAN);WINLDAPAPI ULONG ldap_parse_extended_resultW(LDAP,LDAPMessage*,PWCHAR*,struct berval**,BOOLEAN);WINLDAPAPI PCHAR ldap_err2stringA(ULONG);WINLDAPAPI PWCHAR ldap_err2stringW(ULONG);WINLDAPAPI ULONG LdapGetLastError(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -