Hex Artifact Content

Not logged in

Artifact b2194d0c5279bcf11dab36adf10531a98102b8d8:


0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0a 2a 20 20 20 20 20  ********\.*     
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0060: 20 20 20 20 20 20 20 20 20 20 77 69 6e 6c 64 61            winlda
0070: 70 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20  p.d             
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0090: 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20    *.*           
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20              *.* 
00e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00f0: 20 20 20 20 20 20 57 69 6e 64 6f 77 73 20 41 50        Windows AP
0100: 49 20 68 65 61 64 65 72 20 6d 6f 64 75 6c 65 20  I header module 
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0120: 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20        *.*       
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0170: 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20  *.*             
0180: 20 20 20 20 54 72 61 6e 73 6c 61 74 65 64 20 66      Translated f
0190: 72 6f 6d 20 4d 69 6e 47 57 20 57 69 6e 64 6f 77  rom MinGW Window
01a0: 73 20 68 65 61 64 65 72 73 20 20 20 20 20 20 20  s headers       
01b0: 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20            *.*   
01c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01d0: 20 20 20 20 20 20 20 20 62 79 20 53 74 65 77 61          by Stewa
01e0: 72 74 20 47 6f 72 64 6f 6e 20 20 20 20 20 20 20  rt Gordon       
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0200: 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20      *.*         
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a                *.
0250: 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *               
0260: 20 20 20 20 20 20 20 20 50 6c 61 63 65 64 20 69          Placed i
0270: 6e 74 6f 20 70 75 62 6c 69 63 20 64 6f 6d 61 69  nto public domai
0280: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  n               
0290: 20 20 20 20 20 20 20 20 2a 0a 5c 2a 2a 2a 2a 2a          *.\*****
02a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02e0: 2a 2a 2f 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32  **/.module win32
02f0: 2e 77 69 6e 6c 64 61 70 3b 0a 0a 2f 2a 20 43 6f  .winldap;../* Co
0300: 6d 6d 65 6e 74 20 66 72 6f 6d 20 4d 69 6e 47 57  mment from MinGW
0310: 0a 20 20 77 69 6e 6c 64 61 70 2e 68 20 2d 20 48  .  winldap.h - H
0320: 65 61 64 65 72 20 66 69 6c 65 20 66 6f 72 20 74  eader file for t
0330: 68 65 20 57 69 6e 64 6f 77 73 20 4c 44 41 50 20  he Windows LDAP 
0340: 41 50 49 0a 0a 20 20 57 72 69 74 74 65 6e 20 62  API..  Written b
0350: 79 20 46 69 6c 69 70 20 4e 61 76 61 72 61 20 3c  y Filip Navara <
0360: 78 6e 61 76 61 72 61 40 76 6f 6c 6e 79 2e 63 7a  xnavara@volny.cz
0370: 3e 0a 0a 20 20 52 65 66 65 72 65 6e 63 65 73 3a  >..  References:
0380: 0a 20 20 20 20 54 68 65 20 43 20 4c 44 41 50 20  .    The C LDAP 
0390: 41 70 70 6c 69 63 61 74 69 6f 6e 20 50 72 6f 67  Application Prog
03a0: 72 61 6d 20 49 6e 74 65 72 66 61 63 65 0a 20 20  ram Interface.  
03b0: 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 77 61 74    http://www.wat
03c0: 65 72 73 70 72 69 6e 67 73 2e 6f 72 67 2f 70 75  ersprings.org/pu
03d0: 62 2f 69 64 2f 64 72 61 66 74 2d 69 65 74 66 2d  b/id/draft-ietf-
03e0: 6c 64 61 70 65 78 74 2d 6c 64 61 70 2d 63 2d 61  ldapext-ldap-c-a
03f0: 70 69 2d 30 35 2e 74 78 74 0a 0a 20 20 20 20 4c  pi-05.txt..    L
0400: 69 67 68 74 77 65 69 67 68 74 20 44 69 72 65 63  ightweight Direc
0410: 74 6f 72 79 20 41 63 63 65 73 73 20 50 72 6f 74  tory Access Prot
0420: 6f 63 6f 6c 20 52 65 66 65 72 65 6e 63 65 0a 20  ocol Reference. 
0430: 20 20 20 68 74 74 70 3a 2f 2f 6d 73 64 6e 2e 6d     http://msdn.m
0440: 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2f 6c 69 62  icrosoft.com/lib
0450: 72 61 72 79 2f 65 6e 2d 75 73 2f 6e 65 74 64 69  rary/en-us/netdi
0460: 72 2f 6c 64 61 70 2f 6c 64 61 70 5f 72 65 66 65  r/ldap/ldap_refe
0470: 72 65 6e 63 65 2e 61 73 70 0a 0a 20 20 54 68 69  rence.asp..  Thi
0480: 73 20 6c 69 62 72 61 72 79 20 69 73 20 64 69 73  s library is dis
0490: 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20  tributed in the 
04a0: 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c  hope that it wil
04b0: 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 20 20 62  l be useful,.  b
04c0: 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 57  ut WITHOUT ANY W
04d0: 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74  ARRANTY; without
04e0: 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65   even the implie
04f0: 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 20 20  d warranty of.  
0500: 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20  MERCHANTABILITY 
0510: 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41  or FITNESS FOR A
0520: 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50   PARTICULAR PURP
0530: 4f 53 45 2e 0a 2a 2f 0a 0a 69 6d 70 6f 72 74 20  OSE..*/..import 
0540: 77 69 6e 33 32 2e 73 63 68 61 6e 6e 65 6c 2c 20  win32.schannel, 
0550: 77 69 6e 33 32 2e 77 69 6e 62 65 72 3b 0a 70 72  win32.winber;.pr
0560: 69 76 61 74 65 20 69 6d 70 6f 72 74 20 77 69 6e  ivate import win
0570: 33 32 2e 77 69 6e 63 72 79 70 74 2c 20 77 69 6e  32.wincrypt, win
0580: 33 32 2e 77 69 6e 64 65 66 3b 0a 76 65 72 73 69  32.windef;.versi
0590: 6f 6e 28 54 61 6e 67 6f 29 7b 0a 20 20 20 20 70  on(Tango){.    p
05a0: 72 69 76 61 74 65 20 69 6d 70 6f 72 74 20 74 61  rivate import ta
05b0: 6e 67 6f 2e 73 74 64 63 2e 73 74 64 69 6f 3b 0a  ngo.stdc.stdio;.
05c0: 7d 0a 0a 61 6c 69 67 6e 28 34 29 3a 0a 0a 65 6e  }..align(4):..en
05d0: 75 6d 20 7b 0a 09 4c 44 41 50 5f 56 45 52 53 49  um {..LDAP_VERSI
05e0: 4f 4e 31 20 20 20 20 3d 20 31 2c 0a 09 4c 44 41  ON1    = 1,..LDA
05f0: 50 5f 56 45 52 53 49 4f 4e 32 20 20 20 20 3d 20  P_VERSION2    = 
0600: 32 2c 0a 09 4c 44 41 50 5f 56 45 52 53 49 4f 4e  2,..LDAP_VERSION
0610: 33 20 20 20 20 3d 20 33 2c 0a 09 4c 44 41 50 5f  3    = 3,..LDAP_
0620: 56 45 52 53 49 4f 4e 20 20 20 20 20 3d 20 4c 44  VERSION     = LD
0630: 41 50 5f 56 45 52 53 49 4f 4e 32 2c 0a 09 4c 44  AP_VERSION2,..LD
0640: 41 50 5f 56 45 52 53 49 4f 4e 5f 4d 49 4e 20 3d  AP_VERSION_MIN =
0650: 20 4c 44 41 50 5f 56 45 52 53 49 4f 4e 32 2c 0a   LDAP_VERSION2,.
0660: 09 4c 44 41 50 5f 56 45 52 53 49 4f 4e 5f 4d 41  .LDAP_VERSION_MA
0670: 58 20 3d 20 4c 44 41 50 5f 56 45 52 53 49 4f 4e  X = LDAP_VERSION
0680: 33 0a 7d 0a 0a 2f 2a 09 4d 69 6e 47 57 20 64 65  3.}../*.MinGW de
0690: 66 69 6e 65 73 20 41 4e 53 49 20 61 6e 64 20 55  fines ANSI and U
06a0: 6e 69 63 6f 64 65 20 76 65 72 73 69 6f 6e 73 20  nicode versions 
06b0: 61 73 20 4c 44 41 50 5f 56 45 4e 44 4f 52 5f 4e  as LDAP_VENDOR_N
06c0: 41 4d 45 20 61 6e 64 0a 20 2a 09 4c 44 41 50 5f  AME and. *.LDAP_
06d0: 56 45 4e 44 4f 52 5f 4e 41 4d 45 5f 57 20 72 65  VENDOR_NAME_W re
06e0: 73 70 65 63 74 69 76 65 6c 79 3b 20 73 69 6d 69  spectively; simi
06f0: 6c 61 72 6c 79 20 77 69 74 68 20 6f 74 68 65 72  larly with other
0700: 20 73 74 72 69 6e 67 20 63 6f 6e 73 74 61 6e 74   string constant
0710: 73 0a 20 2a 09 64 65 66 69 6e 65 64 20 69 6e 20  s. *.defined in 
0720: 74 68 69 73 20 6d 6f 64 75 6c 65 2e 0a 20 2a 2f  this module.. */
0730: 0a 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 4c  .const TCHAR[] L
0740: 44 41 50 5f 56 45 4e 44 4f 52 5f 4e 41 4d 45 20  DAP_VENDOR_NAME 
0750: 3d 20 22 4d 69 63 72 6f 73 6f 66 74 20 43 6f 72  = "Microsoft Cor
0760: 70 6f 72 61 74 69 6f 6e 2e 22 3b 0a 0a 63 6f 6e  poration.";..con
0770: 73 74 20 4c 44 41 50 5f 41 50 49 5f 56 45 52 53  st LDAP_API_VERS
0780: 49 4f 4e 20 20 20 20 20 20 20 20 20 20 3d 20 32  ION          = 2
0790: 30 30 34 3b 0a 63 6f 6e 73 74 20 4c 44 41 50 5f  004;.const LDAP_
07a0: 56 45 4e 44 4f 52 5f 56 45 52 53 49 4f 4e 20 20  VENDOR_VERSION  
07b0: 20 20 20 20 20 3d 20 20 35 31 30 3b 0a 63 6f 6e       =  510;.con
07c0: 73 74 20 4c 44 41 50 5f 41 50 49 5f 49 4e 46 4f  st LDAP_API_INFO
07d0: 5f 56 45 52 53 49 4f 4e 20 20 20 20 20 3d 20 20  _VERSION     =  
07e0: 20 20 31 3b 0a 63 6f 6e 73 74 20 4c 44 41 50 5f    1;.const LDAP_
07f0: 46 45 41 54 55 52 45 5f 49 4e 46 4f 5f 56 45 52  FEATURE_INFO_VER
0800: 53 49 4f 4e 20 3d 20 20 20 20 31 3b 0a 0a 65 6e  SION =    1;..en
0810: 75 6d 20 7b 0a 09 4c 44 41 50 5f 53 55 43 43 45  um {..LDAP_SUCCE
0820: 53 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20  SS              
0830: 20 20 20 20 20 20 3d 20 30 78 30 30 2c 0a 09 4c        = 0x00,..L
0840: 44 41 50 5f 4f 50 54 5f 53 55 43 43 45 53 53 20  DAP_OPT_SUCCESS 
0850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
0860: 20 4c 44 41 50 5f 53 55 43 43 45 53 53 2c 0a 09   LDAP_SUCCESS,..
0870: 4c 44 41 50 5f 4f 50 45 52 41 54 49 4f 4e 53 5f  LDAP_OPERATIONS_
0880: 45 52 52 4f 52 2c 0a 09 4c 44 41 50 5f 50 52 4f  ERROR,..LDAP_PRO
0890: 54 4f 43 4f 4c 5f 45 52 52 4f 52 2c 0a 09 4c 44  TOCOL_ERROR,..LD
08a0: 41 50 5f 54 49 4d 45 4c 49 4d 49 54 5f 45 58 43  AP_TIMELIMIT_EXC
08b0: 45 45 44 45 44 2c 0a 09 4c 44 41 50 5f 53 49 5a  EEDED,..LDAP_SIZ
08c0: 45 4c 49 4d 49 54 5f 45 58 43 45 45 44 45 44 2c  ELIMIT_EXCEEDED,
08d0: 0a 09 4c 44 41 50 5f 43 4f 4d 50 41 52 45 5f 46  ..LDAP_COMPARE_F
08e0: 41 4c 53 45 2c 0a 09 4c 44 41 50 5f 43 4f 4d 50  ALSE,..LDAP_COMP
08f0: 41 52 45 5f 54 52 55 45 2c 0a 09 4c 44 41 50 5f  ARE_TRUE,..LDAP_
0900: 53 54 52 4f 4e 47 5f 41 55 54 48 5f 4e 4f 54 5f  STRONG_AUTH_NOT_
0910: 53 55 50 50 4f 52 54 45 44 2c 0a 09 4c 44 41 50  SUPPORTED,..LDAP
0920: 5f 41 55 54 48 5f 4d 45 54 48 4f 44 5f 4e 4f 54  _AUTH_METHOD_NOT
0930: 5f 53 55 50 50 4f 52 54 45 44 20 20 3d 20 4c 44  _SUPPORTED  = LD
0940: 41 50 5f 53 54 52 4f 4e 47 5f 41 55 54 48 5f 4e  AP_STRONG_AUTH_N
0950: 4f 54 5f 53 55 50 50 4f 52 54 45 44 2c 0a 09 4c  OT_SUPPORTED,..L
0960: 44 41 50 5f 53 54 52 4f 4e 47 5f 41 55 54 48 5f  DAP_STRONG_AUTH_
0970: 52 45 51 55 49 52 45 44 2c 0a 09 4c 44 41 50 5f  REQUIRED,..LDAP_
0980: 52 45 46 45 52 52 41 4c 5f 56 32 2c 0a 09 4c 44  REFERRAL_V2,..LD
0990: 41 50 5f 50 41 52 54 49 41 4c 5f 52 45 53 55 4c  AP_PARTIAL_RESUL
09a0: 54 53 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  TS            = 
09b0: 4c 44 41 50 5f 52 45 46 45 52 52 41 4c 5f 56 32  LDAP_REFERRAL_V2
09c0: 2c 0a 09 4c 44 41 50 5f 52 45 46 45 52 52 41 4c  ,..LDAP_REFERRAL
09d0: 2c 0a 09 4c 44 41 50 5f 41 44 4d 49 4e 5f 4c 49  ,..LDAP_ADMIN_LI
09e0: 4d 49 54 5f 45 58 43 45 45 44 45 44 2c 0a 09 4c  MIT_EXCEEDED,..L
09f0: 44 41 50 5f 55 4e 41 56 41 49 4c 41 42 4c 45 5f  DAP_UNAVAILABLE_
0a00: 43 52 49 54 5f 45 58 54 45 4e 53 49 4f 4e 2c 0a  CRIT_EXTENSION,.
0a10: 09 4c 44 41 50 5f 43 4f 4e 46 49 44 45 4e 54 49  .LDAP_CONFIDENTI
0a20: 41 4c 49 54 59 5f 52 45 51 55 49 52 45 44 2c 0a  ALITY_REQUIRED,.
0a30: 09 4c 44 41 50 5f 53 41 53 4c 5f 42 49 4e 44 5f  .LDAP_SASL_BIND_
0a40: 49 4e 5f 50 52 4f 47 52 45 53 53 2c 20 20 2f 2f  IN_PROGRESS,  //
0a50: 20 3d 20 30 78 30 65 0a 09 4c 44 41 50 5f 4e 4f   = 0x0e..LDAP_NO
0a60: 5f 53 55 43 48 5f 41 54 54 52 49 42 55 54 45 20  _SUCH_ATTRIBUTE 
0a70: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 30 2c           = 0x10,
0a80: 0a 09 4c 44 41 50 5f 55 4e 44 45 46 49 4e 45 44  ..LDAP_UNDEFINED
0a90: 5f 54 59 50 45 2c 0a 09 4c 44 41 50 5f 49 4e 41  _TYPE,..LDAP_INA
0aa0: 50 50 52 4f 50 52 49 41 54 45 5f 4d 41 54 43 48  PPROPRIATE_MATCH
0ab0: 49 4e 47 2c 0a 09 4c 44 41 50 5f 43 4f 4e 53 54  ING,..LDAP_CONST
0ac0: 52 41 49 4e 54 5f 56 49 4f 4c 41 54 49 4f 4e 2c  RAINT_VIOLATION,
0ad0: 0a 09 4c 44 41 50 5f 54 59 50 45 5f 4f 52 5f 56  ..LDAP_TYPE_OR_V
0ae0: 41 4c 55 45 5f 45 58 49 53 54 53 2c 0a 09 4c 44  ALUE_EXISTS,..LD
0af0: 41 50 5f 41 54 54 52 49 42 55 54 45 5f 4f 52 5f  AP_ATTRIBUTE_OR_
0b00: 56 41 4c 55 45 5f 45 58 49 53 54 53 20 20 3d 20  VALUE_EXISTS  = 
0b10: 4c 44 41 50 5f 54 59 50 45 5f 4f 52 5f 56 41 4c  LDAP_TYPE_OR_VAL
0b20: 55 45 5f 45 58 49 53 54 53 2c 0a 09 4c 44 41 50  UE_EXISTS,..LDAP
0b30: 5f 49 4e 56 41 4c 49 44 5f 53 59 4e 54 41 58 2c  _INVALID_SYNTAX,
0b40: 20 20 20 20 20 20 20 20 20 2f 2f 20 3d 20 30 78           // = 0x
0b50: 31 35 0a 09 4c 44 41 50 5f 4e 4f 5f 53 55 43 48  15..LDAP_NO_SUCH
0b60: 5f 4f 42 4a 45 43 54 20 20 20 20 20 20 20 20 20  _OBJECT         
0b70: 20 20 20 20 3d 20 30 78 32 30 2c 0a 09 4c 44 41      = 0x20,..LDA
0b80: 50 5f 41 4c 49 41 53 5f 50 52 4f 42 4c 45 4d 2c  P_ALIAS_PROBLEM,
0b90: 0a 09 4c 44 41 50 5f 49 4e 56 41 4c 49 44 5f 44  ..LDAP_INVALID_D
0ba0: 4e 5f 53 59 4e 54 41 58 2c 0a 09 4c 44 41 50 5f  N_SYNTAX,..LDAP_
0bb0: 49 53 5f 4c 45 41 46 2c 0a 09 4c 44 41 50 5f 41  IS_LEAF,..LDAP_A
0bc0: 4c 49 41 53 5f 44 45 52 45 46 5f 50 52 4f 42 4c  LIAS_DEREF_PROBL
0bd0: 45 4d 2c 20 20 20 20 2f 2f 20 3d 20 30 78 32 34  EM,    // = 0x24
0be0: 0a 09 4c 44 41 50 5f 49 4e 41 50 50 52 4f 50 52  ..LDAP_INAPPROPR
0bf0: 49 41 54 45 5f 41 55 54 48 20 20 20 20 20 20 20  IATE_AUTH       
0c00: 20 20 3d 20 30 78 33 30 2c 0a 09 4c 44 41 50 5f    = 0x30,..LDAP_
0c10: 49 4e 56 41 4c 49 44 5f 43 52 45 44 45 4e 54 49  INVALID_CREDENTI
0c20: 41 4c 53 2c 0a 09 4c 44 41 50 5f 49 4e 53 55 46  ALS,..LDAP_INSUF
0c30: 46 49 43 49 45 4e 54 5f 41 43 43 45 53 53 2c 0a  FICIENT_ACCESS,.
0c40: 09 4c 44 41 50 5f 49 4e 53 55 46 46 49 43 49 45  .LDAP_INSUFFICIE
0c50: 4e 54 5f 52 49 47 48 54 53 20 20 20 20 20 20 20  NT_RIGHTS       
0c60: 20 3d 20 4c 44 41 50 5f 49 4e 53 55 46 46 49 43   = LDAP_INSUFFIC
0c70: 49 45 4e 54 5f 41 43 43 45 53 53 2c 0a 09 4c 44  IENT_ACCESS,..LD
0c80: 41 50 5f 42 55 53 59 2c 0a 09 4c 44 41 50 5f 55  AP_BUSY,..LDAP_U
0c90: 4e 41 56 41 49 4c 41 42 4c 45 2c 0a 09 4c 44 41  NAVAILABLE,..LDA
0ca0: 50 5f 55 4e 57 49 4c 4c 49 4e 47 5f 54 4f 5f 50  P_UNWILLING_TO_P
0cb0: 45 52 46 4f 52 4d 2c 0a 09 4c 44 41 50 5f 4c 4f  ERFORM,..LDAP_LO
0cc0: 4f 50 5f 44 45 54 45 43 54 2c 20 20 20 20 20 20  OP_DETECT,      
0cd0: 20 20 20 20 20 20 2f 2f 20 3d 20 30 78 33 36 0a        // = 0x36.
0ce0: 09 4c 44 41 50 5f 4e 41 4d 49 4e 47 5f 56 49 4f  .LDAP_NAMING_VIO
0cf0: 4c 41 54 49 4f 4e 20 20 20 20 20 20 20 20 20 20  LATION          
0d00: 20 3d 20 30 78 34 30 2c 0a 09 4c 44 41 50 5f 4f   = 0x40,..LDAP_O
0d10: 42 4a 45 43 54 5f 43 4c 41 53 53 5f 56 49 4f 4c  BJECT_CLASS_VIOL
0d20: 41 54 49 4f 4e 2c 0a 09 4c 44 41 50 5f 4e 4f 54  ATION,..LDAP_NOT
0d30: 5f 41 4c 4c 4f 57 45 44 5f 4f 4e 5f 4e 4f 4e 4c  _ALLOWED_ON_NONL
0d40: 45 41 46 2c 0a 09 4c 44 41 50 5f 4e 4f 54 5f 41  EAF,..LDAP_NOT_A
0d50: 4c 4c 4f 57 45 44 5f 4f 4e 5f 52 44 4e 2c 0a 09  LLOWED_ON_RDN,..
0d60: 4c 44 41 50 5f 41 4c 52 45 41 44 59 5f 45 58 49  LDAP_ALREADY_EXI
0d70: 53 54 53 2c 0a 09 4c 44 41 50 5f 4e 4f 5f 4f 42  STS,..LDAP_NO_OB
0d80: 4a 45 43 54 5f 43 4c 41 53 53 5f 4d 4f 44 53 2c  JECT_CLASS_MODS,
0d90: 0a 09 4c 44 41 50 5f 52 45 53 55 4c 54 53 5f 54  ..LDAP_RESULTS_T
0da0: 4f 4f 5f 4c 41 52 47 45 2c 0a 09 4c 44 41 50 5f  OO_LARGE,..LDAP_
0db0: 41 46 46 45 43 54 53 5f 4d 55 4c 54 49 50 4c 45  AFFECTS_MULTIPLE
0dc0: 5f 44 53 41 53 2c 20 20 2f 2f 20 3d 20 30 78 34  _DSAS,  // = 0x4
0dd0: 37 0a 09 4c 44 41 50 5f 4f 54 48 45 52 20 20 20  7..LDAP_OTHER   
0de0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0df0: 20 20 20 3d 20 30 78 35 30 2c 0a 09 4c 44 41 50     = 0x50,..LDAP
0e00: 5f 53 45 52 56 45 52 5f 44 4f 57 4e 2c 0a 09 4c  _SERVER_DOWN,..L
0e10: 44 41 50 5f 4c 4f 43 41 4c 5f 45 52 52 4f 52 2c  DAP_LOCAL_ERROR,
0e20: 0a 09 4c 44 41 50 5f 45 4e 43 4f 44 49 4e 47 5f  ..LDAP_ENCODING_
0e30: 45 52 52 4f 52 2c 0a 09 4c 44 41 50 5f 44 45 43  ERROR,..LDAP_DEC
0e40: 4f 44 49 4e 47 5f 45 52 52 4f 52 2c 0a 09 4c 44  ODING_ERROR,..LD
0e50: 41 50 5f 54 49 4d 45 4f 55 54 2c 0a 09 4c 44 41  AP_TIMEOUT,..LDA
0e60: 50 5f 41 55 54 48 5f 55 4e 4b 4e 4f 57 4e 2c 0a  P_AUTH_UNKNOWN,.
0e70: 09 4c 44 41 50 5f 46 49 4c 54 45 52 5f 45 52 52  .LDAP_FILTER_ERR
0e80: 4f 52 2c 0a 09 4c 44 41 50 5f 55 53 45 52 5f 43  OR,..LDAP_USER_C
0e90: 41 4e 43 45 4c 4c 45 44 2c 0a 09 4c 44 41 50 5f  ANCELLED,..LDAP_
0ea0: 50 41 52 41 4d 5f 45 52 52 4f 52 2c 0a 09 4c 44  PARAM_ERROR,..LD
0eb0: 41 50 5f 4e 4f 5f 4d 45 4d 4f 52 59 2c 0a 09 4c  AP_NO_MEMORY,..L
0ec0: 44 41 50 5f 43 4f 4e 4e 45 43 54 5f 45 52 52 4f  DAP_CONNECT_ERRO
0ed0: 52 2c 0a 09 4c 44 41 50 5f 4e 4f 54 5f 53 55 50  R,..LDAP_NOT_SUP
0ee0: 50 4f 52 54 45 44 2c 0a 09 4c 44 41 50 5f 43 4f  PORTED,..LDAP_CO
0ef0: 4e 54 52 4f 4c 5f 4e 4f 54 5f 46 4f 55 4e 44 2c  NTROL_NOT_FOUND,
0f00: 0a 09 4c 44 41 50 5f 4e 4f 5f 52 45 53 55 4c 54  ..LDAP_NO_RESULT
0f10: 53 5f 52 45 54 55 52 4e 45 44 2c 0a 09 4c 44 41  S_RETURNED,..LDA
0f20: 50 5f 4d 4f 52 45 5f 52 45 53 55 4c 54 53 5f 54  P_MORE_RESULTS_T
0f30: 4f 5f 52 45 54 55 52 4e 2c 0a 09 4c 44 41 50 5f  O_RETURN,..LDAP_
0f40: 43 4c 49 45 4e 54 5f 4c 4f 4f 50 2c 0a 09 4c 44  CLIENT_LOOP,..LD
0f50: 41 50 5f 52 45 46 45 52 52 41 4c 5f 4c 49 4d 49  AP_REFERRAL_LIMI
0f60: 54 5f 45 58 43 45 45 44 45 44 20 2f 2f 20 3d 20  T_EXCEEDED // = 
0f70: 30 78 36 31 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 09  0x61.}..enum {..
0f80: 4c 44 41 50 5f 50 4f 52 54 20 20 20 20 20 20 20  LDAP_PORT       
0f90: 20 3d 20 20 33 38 39 2c 0a 09 4c 44 41 50 5f 53   =  389,..LDAP_S
0fa0: 53 4c 5f 50 4f 52 54 20 20 20 20 3d 20 20 36 33  SL_PORT    =  63
0fb0: 36 2c 0a 09 4c 44 41 50 5f 47 43 5f 50 4f 52 54  6,..LDAP_GC_PORT
0fc0: 20 20 20 20 20 3d 20 33 32 36 38 2c 0a 09 4c 44       = 3268,..LD
0fd0: 41 50 5f 53 53 4c 5f 47 43 5f 50 4f 52 54 20 3d  AP_SSL_GC_PORT =
0fe0: 20 33 32 36 39 0a 7d 0a 0a 63 6f 6e 73 74 20 76   3269.}..const v
0ff0: 6f 69 64 2a 0a 09 4c 44 41 50 5f 4f 50 54 5f 4f  oid*..LDAP_OPT_O
1000: 46 46 20 3d 20 6e 75 6c 6c 2c 0a 09 4c 44 41 50  FF = null,..LDAP
1010: 5f 4f 50 54 5f 4f 4e 20 3d 20 63 61 73 74 28 76  _OPT_ON = cast(v
1020: 6f 69 64 2a 29 20 31 3b 0a 0a 65 6e 75 6d 20 7b  oid*) 1;..enum {
1030: 0a 09 4c 44 41 50 5f 4f 50 54 5f 41 50 49 5f 49  ..LDAP_OPT_API_I
1040: 4e 46 4f 20 20 20 20 20 20 20 20 20 20 20 20 20  NFO             
1050: 20 20 3d 20 30 78 30 30 2c 0a 09 4c 44 41 50 5f    = 0x00,..LDAP_
1060: 4f 50 54 5f 44 45 53 43 2c 0a 09 4c 44 41 50 5f  OPT_DESC,..LDAP_
1070: 4f 50 54 5f 44 45 52 45 46 2c 0a 09 4c 44 41 50  OPT_DEREF,..LDAP
1080: 5f 4f 50 54 5f 53 49 5a 45 4c 49 4d 49 54 2c 0a  _OPT_SIZELIMIT,.
1090: 09 4c 44 41 50 5f 4f 50 54 5f 54 49 4d 45 4c 49  .LDAP_OPT_TIMELI
10a0: 4d 49 54 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 54  MIT,..LDAP_OPT_T
10b0: 48 52 45 41 44 5f 46 4e 5f 50 54 52 53 2c 0a 09  HREAD_FN_PTRS,..
10c0: 4c 44 41 50 5f 4f 50 54 5f 52 45 42 49 4e 44 5f  LDAP_OPT_REBIND_
10d0: 46 4e 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 52 45  FN,..LDAP_OPT_RE
10e0: 42 49 4e 44 5f 41 52 47 2c 0a 09 4c 44 41 50 5f  BIND_ARG,..LDAP_
10f0: 4f 50 54 5f 52 45 46 45 52 52 41 4c 53 2c 0a 09  OPT_REFERRALS,..
1100: 4c 44 41 50 5f 4f 50 54 5f 52 45 53 54 41 52 54  LDAP_OPT_RESTART
1110: 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 53 53 4c 2c  ,..LDAP_OPT_SSL,
1120: 0a 09 4c 44 41 50 5f 4f 50 54 5f 54 4c 53 20 20  ..LDAP_OPT_TLS  
1130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1140: 20 20 3d 20 4c 44 41 50 5f 4f 50 54 5f 53 53 4c    = LDAP_OPT_SSL
1150: 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 49 4f 5f 46  ,..LDAP_OPT_IO_F
1160: 4e 5f 50 54 52 53 2c 20 20 20 20 20 20 20 20 20  N_PTRS,         
1170: 2f 2f 20 3d 20 30 78 30 62 0a 09 4c 44 41 50 5f  // = 0x0b..LDAP_
1180: 4f 50 54 5f 43 41 43 48 45 5f 46 4e 5f 50 54 52  OPT_CACHE_FN_PTR
1190: 53 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30  S          = 0x0
11a0: 64 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 43 41 43  d,..LDAP_OPT_CAC
11b0: 48 45 5f 53 54 52 41 54 45 47 59 2c 0a 09 4c 44  HE_STRATEGY,..LD
11c0: 41 50 5f 4f 50 54 5f 43 41 43 48 45 5f 45 4e 41  AP_OPT_CACHE_ENA
11d0: 42 4c 45 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 52  BLE,..LDAP_OPT_R
11e0: 45 46 45 52 52 41 4c 5f 48 4f 50 5f 4c 49 4d 49  EFERRAL_HOP_LIMI
11f0: 54 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 50 52 4f  T,..LDAP_OPT_PRO
1200: 54 4f 43 4f 4c 5f 56 45 52 53 49 4f 4e 2c 0a 09  TOCOL_VERSION,..
1210: 4c 44 41 50 5f 4f 50 54 5f 56 45 52 53 49 4f 4e  LDAP_OPT_VERSION
1220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1230: 3d 20 4c 44 41 50 5f 4f 50 54 5f 50 52 4f 54 4f  = LDAP_OPT_PROTO
1240: 43 4f 4c 5f 56 45 52 53 49 4f 4e 2c 0a 09 4c 44  COL_VERSION,..LD
1250: 41 50 5f 4f 50 54 5f 53 45 52 56 45 52 5f 43 4f  AP_OPT_SERVER_CO
1260: 4e 54 52 4f 4c 53 2c 0a 09 4c 44 41 50 5f 4f 50  NTROLS,..LDAP_OP
1270: 54 5f 43 4c 49 45 4e 54 5f 43 4f 4e 54 52 4f 4c  T_CLIENT_CONTROL
1280: 53 2c 20 20 20 20 2f 2f 20 3d 20 30 78 31 33 0a  S,    // = 0x13.
1290: 09 4c 44 41 50 5f 4f 50 54 5f 41 50 49 5f 46 45  .LDAP_OPT_API_FE
12a0: 41 54 55 52 45 5f 49 4e 46 4f 20 20 20 20 20 20  ATURE_INFO      
12b0: 20 3d 20 30 78 31 35 2c 0a 09 4c 44 41 50 5f 4f   = 0x15,..LDAP_O
12c0: 50 54 5f 48 4f 53 54 5f 4e 41 4d 45 20 20 20 20  PT_HOST_NAME    
12d0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 33 30            = 0x30
12e0: 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 45 52 52 4f  ,..LDAP_OPT_ERRO
12f0: 52 5f 4e 55 4d 42 45 52 2c 0a 09 4c 44 41 50 5f  R_NUMBER,..LDAP_
1300: 4f 50 54 5f 45 52 52 4f 52 5f 53 54 52 49 4e 47  OPT_ERROR_STRING
1310: 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 53 45 52 56  ,..LDAP_OPT_SERV
1320: 45 52 5f 45 52 52 4f 52 2c 0a 09 4c 44 41 50 5f  ER_ERROR,..LDAP_
1330: 4f 50 54 5f 53 45 52 56 45 52 5f 45 58 54 5f 45  OPT_SERVER_EXT_E
1340: 52 52 4f 52 2c 20 20 20 2f 2f 20 3d 20 30 78 33  RROR,   // = 0x3
1350: 34 0a 09 4c 44 41 50 5f 4f 50 54 5f 50 49 4e 47  4..LDAP_OPT_PING
1360: 5f 4b 45 45 50 5f 41 4c 49 56 45 20 20 20 20 20  _KEEP_ALIVE     
1370: 20 20 20 3d 20 30 78 33 36 2c 0a 09 4c 44 41 50     = 0x36,..LDAP
1380: 5f 4f 50 54 5f 50 49 4e 47 5f 57 41 49 54 5f 54  _OPT_PING_WAIT_T
1390: 49 4d 45 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 50  IME,..LDAP_OPT_P
13a0: 49 4e 47 5f 4c 49 4d 49 54 2c 20 20 20 20 20 20  ING_LIMIT,      
13b0: 20 20 20 2f 2f 20 3d 20 30 78 33 38 0a 09 4c 44     // = 0x38..LD
13c0: 41 50 5f 4f 50 54 5f 44 4e 53 44 4f 4d 41 49 4e  AP_OPT_DNSDOMAIN
13d0: 5f 4e 41 4d 45 20 20 20 20 20 20 20 20 20 3d 20  _NAME         = 
13e0: 30 78 33 62 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f  0x3b,..LDAP_OPT_
13f0: 47 45 54 44 53 4e 41 4d 45 5f 46 4c 41 47 53 20  GETDSNAME_FLAGS 
1400: 20 20 20 20 20 20 20 3d 20 30 78 33 64 2c 0a 09         = 0x3d,..
1410: 4c 44 41 50 5f 4f 50 54 5f 48 4f 53 54 5f 52 45  LDAP_OPT_HOST_RE
1420: 41 43 48 41 42 4c 45 2c 0a 09 4c 44 41 50 5f 4f  ACHABLE,..LDAP_O
1430: 50 54 5f 50 52 4f 4d 50 54 5f 43 52 45 44 45 4e  PT_PROMPT_CREDEN
1440: 54 49 41 4c 53 2c 0a 09 4c 44 41 50 5f 4f 50 54  TIALS,..LDAP_OPT
1450: 5f 54 43 50 5f 4b 45 45 50 41 4c 49 56 45 2c 20  _TCP_KEEPALIVE, 
1460: 20 20 20 20 20 2f 2f 20 3d 20 30 78 34 30 0a 09       // = 0x40..
1470: 4c 44 41 50 5f 4f 50 54 5f 52 45 46 45 52 52 41  LDAP_OPT_REFERRA
1480: 4c 5f 43 41 4c 4c 42 41 43 4b 20 20 20 20 20 20  L_CALLBACK      
1490: 3d 20 30 78 37 30 2c 0a 09 4c 44 41 50 5f 4f 50  = 0x70,..LDAP_OP
14a0: 54 5f 43 4c 49 45 4e 54 5f 43 45 52 54 49 46 49  T_CLIENT_CERTIFI
14b0: 43 41 54 45 20 20 20 20 20 3d 20 30 78 38 30 2c  CATE     = 0x80,
14c0: 0a 09 4c 44 41 50 5f 4f 50 54 5f 53 45 52 56 45  ..LDAP_OPT_SERVE
14d0: 52 5f 43 45 52 54 49 46 49 43 41 54 45 2c 20 2f  R_CERTIFICATE, /
14e0: 2f 20 3d 20 30 78 38 31 0a 09 4c 44 41 50 5f 4f  / = 0x81..LDAP_O
14f0: 50 54 5f 41 55 54 4f 5f 52 45 43 4f 4e 4e 45 43  PT_AUTO_RECONNEC
1500: 54 20 20 20 20 20 20 20 20 20 3d 20 30 78 39 31  T         = 0x91
1510: 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 53 53 50 49  ,..LDAP_OPT_SSPI
1520: 5f 46 4c 41 47 53 2c 0a 09 4c 44 41 50 5f 4f 50  _FLAGS,..LDAP_OP
1530: 54 5f 53 53 4c 5f 49 4e 46 4f 2c 0a 09 4c 44 41  T_SSL_INFO,..LDA
1540: 50 5f 4f 50 54 5f 54 4c 53 5f 49 4e 46 4f 20 20  P_OPT_TLS_INFO  
1550: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 4c               = L
1560: 44 41 50 5f 4f 50 54 5f 53 53 4c 5f 49 4e 46 4f  DAP_OPT_SSL_INFO
1570: 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 52 45 46 5f  ,..LDAP_OPT_REF_
1580: 44 45 52 45 46 5f 43 4f 4e 4e 5f 50 45 52 5f 4d  DEREF_CONN_PER_M
1590: 53 47 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 53 49  SG,..LDAP_OPT_SI
15a0: 47 4e 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 45 4e  GN,..LDAP_OPT_EN
15b0: 43 52 59 50 54 2c 0a 09 4c 44 41 50 5f 4f 50 54  CRYPT,..LDAP_OPT
15c0: 5f 53 41 53 4c 5f 4d 45 54 48 4f 44 2c 0a 09 4c  _SASL_METHOD,..L
15d0: 44 41 50 5f 4f 50 54 5f 41 52 45 43 5f 45 58 43  DAP_OPT_AREC_EXC
15e0: 4c 55 53 49 56 45 2c 0a 09 4c 44 41 50 5f 4f 50  LUSIVE,..LDAP_OP
15f0: 54 5f 53 45 43 55 52 49 54 59 5f 43 4f 4e 54 45  T_SECURITY_CONTE
1600: 58 54 2c 0a 09 4c 44 41 50 5f 4f 50 54 5f 52 4f  XT,..LDAP_OPT_RO
1610: 4f 54 44 53 45 5f 43 41 43 48 45 20 20 20 20 20  OTDSE_CACHE     
1620: 20 20 2f 2f 20 3d 20 30 78 39 61 0a 7d 0a 0a 65    // = 0x9a.}..e
1630: 6e 75 6d 20 7b 0a 09 4c 44 41 50 5f 44 45 52 45  num {..LDAP_DERE
1640: 46 5f 4e 45 56 45 52 2c 0a 09 4c 44 41 50 5f 44  F_NEVER,..LDAP_D
1650: 45 52 45 46 5f 53 45 41 52 43 48 49 4e 47 2c 0a  EREF_SEARCHING,.
1660: 09 4c 44 41 50 5f 44 45 52 45 46 5f 46 49 4e 44  .LDAP_DEREF_FIND
1670: 49 4e 47 2c 0a 09 4c 44 41 50 5f 44 45 52 45 46  ING,..LDAP_DEREF
1680: 5f 41 4c 57 41 59 53 0a 7d 0a 0a 63 6f 6e 73 74  _ALWAYS.}..const
1690: 20 4c 44 41 50 5f 4e 4f 5f 4c 49 4d 49 54 20 3d   LDAP_NO_LIMIT =
16a0: 20 30 3b 0a 0a 63 6f 6e 73 74 20 54 43 48 41 52   0;..const TCHAR
16b0: 5b 5d 20 4c 44 41 50 5f 43 4f 4e 54 52 4f 4c 5f  [] LDAP_CONTROL_
16c0: 52 45 46 45 52 52 41 4c 53 20 3d 20 22 31 2e 32  REFERRALS = "1.2
16d0: 2e 38 34 30 2e 31 31 33 35 35 36 2e 31 2e 34 2e  .840.113556.1.4.
16e0: 36 31 36 22 3b 0a 0a 2f 2f 20 46 49 58 4d 45 3a  616";..// FIXME:
16f0: 20 63 68 65 63 6b 20 74 79 70 65 20 28 64 65 63   check type (dec
1700: 6c 61 72 65 64 20 77 69 74 68 20 55 20 73 75 66  lared with U suf
1710: 66 69 78 20 69 6e 20 4d 69 6e 47 57 29 0a 65 6e  fix in MinGW).en
1720: 75 6d 20 3a 20 75 69 6e 74 20 7b 0a 09 4c 44 41  um : uint {..LDA
1730: 50 5f 43 48 41 53 45 5f 53 55 42 4f 52 44 49 4e  P_CHASE_SUBORDIN
1740: 41 54 45 5f 52 45 46 45 52 52 41 4c 53 20 3d 20  ATE_REFERRALS = 
1750: 30 78 32 30 2c 0a 09 4c 44 41 50 5f 43 48 41 53  0x20,..LDAP_CHAS
1760: 45 5f 45 58 54 45 52 4e 41 4c 5f 52 45 46 45 52  E_EXTERNAL_REFER
1770: 52 41 4c 53 20 20 20 20 3d 20 30 78 34 30 0a 7d  RALS    = 0x40.}
1780: 0a 0a 65 6e 75 6d 20 7b 0a 09 4c 44 41 50 5f 53  ..enum {..LDAP_S
1790: 43 4f 50 45 5f 44 45 46 41 55 4c 54 20 3d 20 2d  COPE_DEFAULT = -
17a0: 31 2c 0a 09 4c 44 41 50 5f 53 43 4f 50 45 5f 42  1,..LDAP_SCOPE_B
17b0: 41 53 45 2c 0a 09 4c 44 41 50 5f 53 43 4f 50 45  ASE,..LDAP_SCOPE
17c0: 5f 4f 4e 45 4c 45 56 45 4c 2c 0a 09 4c 44 41 50  _ONELEVEL,..LDAP
17d0: 5f 53 43 4f 50 45 5f 53 55 42 54 52 45 45 0a 7d  _SCOPE_SUBTREE.}
17e0: 0a 0a 65 6e 75 6d 20 7b 0a 09 4c 44 41 50 5f 4d  ..enum {..LDAP_M
17f0: 4f 44 5f 41 44 44 2c 0a 09 4c 44 41 50 5f 4d 4f  OD_ADD,..LDAP_MO
1800: 44 5f 44 45 4c 45 54 45 2c 0a 09 4c 44 41 50 5f  D_DELETE,..LDAP_
1810: 4d 4f 44 5f 52 45 50 4c 41 43 45 2c 0a 09 4c 44  MOD_REPLACE,..LD
1820: 41 50 5f 4d 4f 44 5f 42 56 41 4c 55 45 53 20 3d  AP_MOD_BVALUES =
1830: 20 30 78 38 30 0a 7d 0a 0a 65 6e 75 6d 20 3a 20   0x80.}..enum : 
1840: 69 6e 74 20 7b 0a 09 4c 44 41 50 5f 52 45 53 5f  int {..LDAP_RES_
1850: 42 49 4e 44 20 20 20 20 20 20 20 20 20 20 20 20  BIND            
1860: 20 3d 20 30 78 36 31 2c 0a 09 4c 44 41 50 5f 52   = 0x61,..LDAP_R
1870: 45 53 5f 53 45 41 52 43 48 5f 45 4e 54 52 59 20  ES_SEARCH_ENTRY 
1880: 20 20 20 20 3d 20 30 78 36 34 2c 0a 09 4c 44 41      = 0x64,..LDA
1890: 50 5f 52 45 53 5f 53 45 41 52 43 48 5f 52 45 53  P_RES_SEARCH_RES
18a0: 55 4c 54 20 20 20 20 3d 20 30 78 36 35 2c 0a 09  ULT    = 0x65,..
18b0: 4c 44 41 50 5f 52 45 53 5f 4d 4f 44 49 46 59 20  LDAP_RES_MODIFY 
18c0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 36 37            = 0x67
18d0: 2c 0a 09 4c 44 41 50 5f 52 45 53 5f 41 44 44 20  ,..LDAP_RES_ADD 
18e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
18f0: 78 36 39 2c 0a 09 4c 44 41 50 5f 52 45 53 5f 44  x69,..LDAP_RES_D
1900: 45 4c 45 54 45 20 20 20 20 20 20 20 20 20 20 20  ELETE           
1910: 3d 20 30 78 36 62 2c 0a 09 4c 44 41 50 5f 52 45  = 0x6b,..LDAP_RE
1920: 53 5f 4d 4f 44 52 44 4e 20 20 20 20 20 20 20 20  S_MODRDN        
1930: 20 20 20 3d 20 30 78 36 64 2c 0a 09 4c 44 41 50     = 0x6d,..LDAP
1940: 5f 52 45 53 5f 43 4f 4d 50 41 52 45 20 20 20 20  _RES_COMPARE    
1950: 20 20 20 20 20 20 3d 20 30 78 36 66 2c 0a 09 4c        = 0x6f,..L
1960: 44 41 50 5f 52 45 53 5f 53 45 41 52 43 48 5f 52  DAP_RES_SEARCH_R
1970: 45 46 45 52 45 4e 43 45 20 3d 20 30 78 37 33 2c  EFERENCE = 0x73,
1980: 0a 09 4c 44 41 50 5f 52 45 53 5f 45 58 54 45 4e  ..LDAP_RES_EXTEN
1990: 44 45 44 20 20 20 20 20 20 20 20 20 3d 20 30 78  DED         = 0x
19a0: 37 38 2c 0a 09 4c 44 41 50 5f 52 45 53 5f 41 4e  78,..LDAP_RES_AN
19b0: 59 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  Y              =
19c0: 20 2d 31 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 09 4c   -1.}..enum {..L
19d0: 44 41 50 5f 4d 53 47 5f 4f 4e 45 2c 0a 09 4c 44  DAP_MSG_ONE,..LD
19e0: 41 50 5f 4d 53 47 5f 41 4c 4c 2c 0a 09 4c 44 41  AP_MSG_ALL,..LDA
19f0: 50 5f 4d 53 47 5f 52 45 43 45 49 56 45 44 0a 7d  P_MSG_RECEIVED.}
1a00: 0a 0a 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 0a  ..const TCHAR[].
1a10: 09 4c 44 41 50 5f 53 45 52 56 45 52 5f 53 4f 52  .LDAP_SERVER_SOR
1a20: 54 5f 4f 49 44 20 20 20 20 20 20 20 20 20 3d 20  T_OID         = 
1a30: 22 31 2e 32 2e 38 34 30 2e 31 31 33 35 35 36 2e  "1.2.840.113556.
1a40: 31 2e 34 2e 34 37 33 22 2c 0a 09 4c 44 41 50 5f  1.4.473",..LDAP_
1a50: 53 45 52 56 45 52 5f 52 45 53 50 5f 53 4f 52 54  SERVER_RESP_SORT
1a60: 5f 4f 49 44 20 20 20 20 3d 20 22 31 2e 32 2e 38  _OID    = "1.2.8
1a70: 34 30 2e 31 31 33 35 35 36 2e 31 2e 34 2e 34 37  40.113556.1.4.47
1a80: 34 22 2c 0a 09 4c 44 41 50 5f 50 41 47 45 44 5f  4",..LDAP_PAGED_
1a90: 52 45 53 55 4c 54 5f 4f 49 44 5f 53 54 52 49 4e  RESULT_OID_STRIN
1aa0: 47 20 3d 20 22 31 2e 32 2e 38 34 30 2e 31 31 33  G = "1.2.840.113
1ab0: 35 35 36 2e 31 2e 34 2e 33 31 39 22 2c 0a 09 4c  556.1.4.319",..L
1ac0: 44 41 50 5f 43 4f 4e 54 52 4f 4c 5f 56 4c 56 52  DAP_CONTROL_VLVR
1ad0: 45 51 55 45 53 54 20 20 20 20 20 20 3d 20 22 32  EQUEST      = "2
1ae0: 2e 31 36 2e 38 34 30 2e 31 2e 31 31 33 37 33 30  .16.840.1.113730
1af0: 2e 33 2e 34 2e 39 22 2c 0a 09 4c 44 41 50 5f 43  .3.4.9",..LDAP_C
1b00: 4f 4e 54 52 4f 4c 5f 56 4c 56 52 45 53 50 4f 4e  ONTROL_VLVRESPON
1b10: 53 45 20 20 20 20 20 3d 20 22 32 2e 31 36 2e 38  SE     = "2.16.8
1b20: 34 30 2e 31 2e 31 31 33 37 33 30 2e 33 2e 34 2e  40.1.113730.3.4.
1b30: 31 30 22 2c 0a 09 4c 44 41 50 5f 53 54 41 52 54  10",..LDAP_START
1b40: 5f 54 4c 53 5f 4f 49 44 20 20 20 20 20 20 20 20  _TLS_OID        
1b50: 20 20 20 3d 20 22 31 2e 33 2e 36 2e 31 2e 34 2e     = "1.3.6.1.4.
1b60: 31 2e 31 34 36 36 2e 32 30 30 33 37 22 2c 0a 09  1.1466.20037",..
1b70: 4c 44 41 50 5f 54 54 4c 5f 45 58 54 45 4e 44 45  LDAP_TTL_EXTENDE
1b80: 44 5f 4f 50 5f 4f 49 44 20 20 20 20 20 3d 20 22  D_OP_OID     = "
1b90: 31 2e 33 2e 36 2e 31 2e 34 2e 31 2e 31 34 36 36  1.3.6.1.4.1.1466
1ba0: 2e 31 30 31 2e 31 31 39 2e 31 22 3b 0a 0a 65 6e  .101.119.1";..en
1bb0: 75 6d 20 7b 0a 09 4c 44 41 50 5f 41 55 54 48 5f  um {..LDAP_AUTH_
1bc0: 4e 4f 4e 45 20 20 20 20 20 20 3d 20 30 78 30 30  NONE      = 0x00
1bd0: 55 2c 0a 09 4c 44 41 50 5f 41 55 54 48 5f 53 49  U,..LDAP_AUTH_SI
1be0: 4d 50 4c 45 20 20 20 20 3d 20 30 78 38 30 55 2c  MPLE    = 0x80U,
1bf0: 0a 09 4c 44 41 50 5f 41 55 54 48 5f 53 41 53 4c  ..LDAP_AUTH_SASL
1c00: 20 20 20 20 20 20 3d 20 30 78 38 33 55 2c 0a 09        = 0x83U,..
1c10: 4c 44 41 50 5f 41 55 54 48 5f 4f 54 48 45 52 4b  LDAP_AUTH_OTHERK
1c20: 49 4e 44 20 3d 20 30 78 38 36 55 2c 0a 09 4c 44  IND = 0x86U,..LD
1c30: 41 50 5f 41 55 54 48 5f 45 58 54 45 52 4e 41 4c  AP_AUTH_EXTERNAL
1c40: 20 20 3d 20 4c 44 41 50 5f 41 55 54 48 5f 4f 54    = LDAP_AUTH_OT
1c50: 48 45 52 4b 49 4e 44 20 7c 20 30 78 30 30 32 30  HERKIND | 0x0020
1c60: 55 2c 0a 09 4c 44 41 50 5f 41 55 54 48 5f 53 49  U,..LDAP_AUTH_SI
1c70: 43 49 4c 59 20 20 20 20 3d 20 4c 44 41 50 5f 41  CILY    = LDAP_A
1c80: 55 54 48 5f 4f 54 48 45 52 4b 49 4e 44 20 7c 20  UTH_OTHERKIND | 
1c90: 30 78 30 32 30 30 55 2c 0a 09 4c 44 41 50 5f 41  0x0200U,..LDAP_A
1ca0: 55 54 48 5f 4e 45 47 4f 54 49 41 54 45 20 3d 20  UTH_NEGOTIATE = 
1cb0: 4c 44 41 50 5f 41 55 54 48 5f 4f 54 48 45 52 4b  LDAP_AUTH_OTHERK
1cc0: 49 4e 44 20 7c 20 30 78 30 34 30 30 55 2c 0a 09  IND | 0x0400U,..
1cd0: 4c 44 41 50 5f 41 55 54 48 5f 4d 53 4e 20 20 20  LDAP_AUTH_MSN   
1ce0: 20 20 20 20 3d 20 4c 44 41 50 5f 41 55 54 48 5f      = LDAP_AUTH_
1cf0: 4f 54 48 45 52 4b 49 4e 44 20 7c 20 30 78 30 38  OTHERKIND | 0x08
1d00: 30 30 55 2c 0a 09 4c 44 41 50 5f 41 55 54 48 5f  00U,..LDAP_AUTH_
1d10: 4e 54 4c 4d 20 20 20 20 20 20 3d 20 4c 44 41 50  NTLM      = LDAP
1d20: 5f 41 55 54 48 5f 4f 54 48 45 52 4b 49 4e 44 20  _AUTH_OTHERKIND 
1d30: 7c 20 30 78 31 30 30 30 55 2c 0a 09 4c 44 41 50  | 0x1000U,..LDAP
1d40: 5f 41 55 54 48 5f 44 49 47 45 53 54 20 20 20 20  _AUTH_DIGEST    
1d50: 3d 20 4c 44 41 50 5f 41 55 54 48 5f 4f 54 48 45  = LDAP_AUTH_OTHE
1d60: 52 4b 49 4e 44 20 7c 20 30 78 34 30 30 30 55 2c  RKIND | 0x4000U,
1d70: 0a 09 4c 44 41 50 5f 41 55 54 48 5f 44 50 41 20  ..LDAP_AUTH_DPA 
1d80: 20 20 20 20 20 20 3d 20 4c 44 41 50 5f 41 55 54        = LDAP_AUT
1d90: 48 5f 4f 54 48 45 52 4b 49 4e 44 20 7c 20 30 78  H_OTHERKIND | 0x
1da0: 32 30 30 30 55 2c 0a 09 4c 44 41 50 5f 41 55 54  2000U,..LDAP_AUT
1db0: 48 5f 53 53 50 49 20 20 20 20 20 20 3d 20 4c 44  H_SSPI      = LD
1dc0: 41 50 5f 41 55 54 48 5f 4e 45 47 4f 54 49 41 54  AP_AUTH_NEGOTIAT
1dd0: 45 0a 7d 0a 0a 65 6e 75 6d 20 7b 0a 09 4c 44 41  E.}..enum {..LDA
1de0: 50 5f 46 49 4c 54 45 52 5f 41 4e 44 20 20 20 20  P_FILTER_AND    
1df0: 20 20 20 20 3d 20 30 78 61 30 2c 0a 09 4c 44 41      = 0xa0,..LDA
1e00: 50 5f 46 49 4c 54 45 52 5f 4f 52 2c 0a 09 4c 44  P_FILTER_OR,..LD
1e10: 41 50 5f 46 49 4c 54 45 52 5f 4e 4f 54 2c 0a 09  AP_FILTER_NOT,..
1e20: 4c 44 41 50 5f 46 49 4c 54 45 52 5f 45 51 55 41  LDAP_FILTER_EQUA
1e30: 4c 49 54 59 2c 0a 09 4c 44 41 50 5f 46 49 4c 54  LITY,..LDAP_FILT
1e40: 45 52 5f 53 55 42 53 54 52 49 4e 47 53 2c 0a 09  ER_SUBSTRINGS,..
1e50: 4c 44 41 50 5f 46 49 4c 54 45 52 5f 47 45 2c 0a  LDAP_FILTER_GE,.
1e60: 09 4c 44 41 50 5f 46 49 4c 54 45 52 5f 4c 45 2c  .LDAP_FILTER_LE,
1e70: 20 20 20 20 20 2f 2f 20 3d 20 30 78 61 36 0a 09       // = 0xa6..
1e80: 4c 44 41 50 5f 46 49 4c 54 45 52 5f 41 50 50 52  LDAP_FILTER_APPR
1e90: 4f 58 20 20 20 20 20 3d 20 30 78 61 38 2c 0a 09  OX     = 0xa8,..
1ea0: 4c 44 41 50 5f 46 49 4c 54 45 52 5f 45 58 54 45  LDAP_FILTER_EXTE
1eb0: 4e 53 49 42 4c 45 2c 0a 09 4c 44 41 50 5f 46 49  NSIBLE,..LDAP_FI
1ec0: 4c 54 45 52 5f 50 52 45 53 45 4e 54 20 20 20 20  LTER_PRESENT    
1ed0: 3d 20 30 78 38 37 0a 7d 0a 0a 65 6e 75 6d 20 7b  = 0x87.}..enum {
1ee0: 0a 09 4c 44 41 50 5f 53 55 42 53 54 52 49 4e 47  ..LDAP_SUBSTRING
1ef0: 5f 49 4e 49 54 49 41 4c 20 3d 20 30 78 38 30 2c  _INITIAL = 0x80,
1f00: 0a 09 4c 44 41 50 5f 53 55 42 53 54 52 49 4e 47  ..LDAP_SUBSTRING
1f10: 5f 41 4e 59 2c 0a 09 4c 44 41 50 5f 53 55 42 53  _ANY,..LDAP_SUBS
1f20: 54 52 49 4e 47 5f 46 49 4e 41 4c 0a 7d 0a 0a 73  TRING_FINAL.}..s
1f30: 74 72 75 63 74 20 4c 44 41 50 20 7b 0a 09 63 68  truct LDAP {..ch
1f40: 61 72 5b 37 36 5d 20 52 65 73 65 72 76 65 64 3b  ar[76] Reserved;
1f50: 0a 09 50 43 48 41 52 20 20 20 20 6c 64 5f 68 6f  ..PCHAR    ld_ho
1f60: 73 74 3b 0a 09 55 4c 4f 4e 47 20 20 20 20 6c 64  st;..ULONG    ld
1f70: 5f 76 65 72 73 69 6f 6e 3b 0a 09 55 43 48 41 52  _version;..UCHAR
1f80: 20 20 20 20 6c 64 5f 6c 62 65 72 6f 70 74 69 6f      ld_lberoptio
1f90: 6e 73 3b 0a 09 69 6e 74 20 20 20 20 20 20 6c 64  ns;..int      ld
1fa0: 5f 64 65 72 65 66 3b 0a 09 69 6e 74 20 20 20 20  _deref;..int    
1fb0: 20 20 6c 64 5f 74 69 6d 65 6c 69 6d 69 74 3b 0a    ld_timelimit;.
1fc0: 09 69 6e 74 20 20 20 20 20 20 6c 64 5f 73 69 7a  .int      ld_siz
1fd0: 65 6c 69 6d 69 74 3b 0a 09 69 6e 74 20 20 20 20  elimit;..int    
1fe0: 20 20 6c 64 5f 65 72 72 6e 6f 3b 0a 09 50 43 48    ld_errno;..PCH
1ff0: 41 52 20 20 20 20 6c 64 5f 6d 61 74 63 68 65 64  AR    ld_matched
2000: 3b 0a 09 50 43 48 41 52 20 20 20 20 6c 64 5f 65  ;..PCHAR    ld_e
2010: 72 72 6f 72 3b 0a 7d 0a 61 6c 69 61 73 20 4c 44  rror;.}.alias LD
2020: 41 50 2a 20 50 4c 44 41 50 3b 0a 0a 73 74 72 75  AP* PLDAP;..stru
2030: 63 74 20 4c 44 41 50 4d 65 73 73 61 67 65 20 7b  ct LDAPMessage {
2040: 0a 09 55 4c 4f 4e 47 20 20 20 20 20 20 20 20 6c  ..ULONG        l
2050: 6d 5f 6d 73 67 69 64 3b 0a 09 55 4c 4f 4e 47 20  m_msgid;..ULONG 
2060: 20 20 20 20 20 20 20 6c 6d 5f 6d 73 67 74 79 70         lm_msgtyp
2070: 65 3b 0a 09 42 65 72 45 6c 65 6d 65 6e 74 2a 20  e;..BerElement* 
2080: 20 6c 6d 5f 62 65 72 3b 0a 09 4c 44 41 50 4d 65   lm_ber;..LDAPMe
2090: 73 73 61 67 65 2a 20 6c 6d 5f 63 68 61 69 6e 3b  ssage* lm_chain;
20a0: 0a 09 4c 44 41 50 4d 65 73 73 61 67 65 2a 20 6c  ..LDAPMessage* l
20b0: 6d 5f 6e 65 78 74 3b 0a 09 55 4c 4f 4e 47 20 20  m_next;..ULONG  
20c0: 20 20 20 20 20 20 6c 6d 5f 74 69 6d 65 3b 0a 7d        lm_time;.}
20d0: 0a 61 6c 69 61 73 20 4c 44 41 50 4d 65 73 73 61  .alias LDAPMessa
20e0: 67 65 2a 20 50 4c 44 41 50 4d 65 73 73 61 67 65  ge* PLDAPMessage
20f0: 3b 0a 0a 73 74 72 75 63 74 20 4c 44 41 50 5f 54  ;..struct LDAP_T
2100: 49 4d 45 56 41 4c 20 7b 0a 09 4c 4f 4e 47 20 74  IMEVAL {..LONG t
2110: 76 5f 73 65 63 3b 0a 09 4c 4f 4e 47 20 74 76 5f  v_sec;..LONG tv_
2120: 75 73 65 63 3b 0a 7d 0a 61 6c 69 61 73 20 4c 44  usec;.}.alias LD
2130: 41 50 5f 54 49 4d 45 56 41 4c 2a 20 50 4c 44 41  AP_TIMEVAL* PLDA
2140: 50 5f 54 49 4d 45 56 41 4c 3b 0a 0a 73 74 72 75  P_TIMEVAL;..stru
2150: 63 74 20 4c 44 41 50 41 50 49 49 6e 66 6f 41 20  ct LDAPAPIInfoA 
2160: 7b 0a 09 69 6e 74 20 20 20 20 6c 64 61 70 61 69  {..int    ldapai
2170: 5f 69 6e 66 6f 5f 76 65 72 73 69 6f 6e 3b 0a 09  _info_version;..
2180: 69 6e 74 20 20 20 20 6c 64 61 70 61 69 5f 61 70  int    ldapai_ap
2190: 69 5f 76 65 72 73 69 6f 6e 3b 0a 09 69 6e 74 20  i_version;..int 
21a0: 20 20 20 6c 64 61 70 61 69 5f 70 72 6f 74 6f 63     ldapai_protoc
21b0: 6f 6c 5f 76 65 72 73 69 6f 6e 3b 0a 09 63 68 61  ol_version;..cha
21c0: 72 2a 2a 20 6c 64 61 70 61 69 5f 65 78 74 65 6e  r** ldapai_exten
21d0: 73 69 6f 6e 73 3b 0a 09 63 68 61 72 2a 20 20 6c  sions;..char*  l
21e0: 64 61 70 61 69 5f 76 65 6e 64 6f 72 5f 6e 61 6d  dapai_vendor_nam
21f0: 65 3b 0a 09 69 6e 74 20 20 20 20 6c 64 61 70 61  e;..int    ldapa
2200: 69 5f 76 65 6e 64 6f 72 5f 76 65 72 73 69 6f 6e  i_vendor_version
2210: 3b 0a 7d 0a 61 6c 69 61 73 20 4c 44 41 50 41 50  ;.}.alias LDAPAP
2220: 49 49 6e 66 6f 41 2a 20 50 4c 44 41 50 41 50 49  IInfoA* PLDAPAPI
2230: 49 6e 66 6f 41 3b 0a 0a 73 74 72 75 63 74 20 4c  InfoA;..struct L
2240: 44 41 50 41 50 49 49 6e 66 6f 57 20 7b 0a 09 69  DAPAPIInfoW {..i
2250: 6e 74 20 20 20 20 20 6c 64 61 70 61 69 5f 69 6e  nt     ldapai_in
2260: 66 6f 5f 76 65 72 73 69 6f 6e 3b 0a 09 69 6e 74  fo_version;..int
2270: 20 20 20 20 20 6c 64 61 70 61 69 5f 61 70 69 5f       ldapai_api_
2280: 76 65 72 73 69 6f 6e 3b 0a 09 69 6e 74 20 20 20  version;..int   
2290: 20 20 6c 64 61 70 61 69 5f 70 72 6f 74 6f 63 6f    ldapai_protoco
22a0: 6c 5f 76 65 72 73 69 6f 6e 3b 0a 09 50 57 43 48  l_version;..PWCH
22b0: 41 52 2a 20 6c 64 61 70 61 69 5f 65 78 74 65 6e  AR* ldapai_exten
22c0: 73 69 6f 6e 73 3b 0a 09 50 57 43 48 41 52 20 20  sions;..PWCHAR  
22d0: 6c 64 61 70 61 69 5f 76 65 6e 64 6f 72 5f 6e 61  ldapai_vendor_na
22e0: 6d 65 3b 0a 09 69 6e 74 20 20 20 20 20 6c 64 61  me;..int     lda
22f0: 70 61 69 5f 76 65 6e 64 6f 72 5f 76 65 72 73 69  pai_vendor_versi
2300: 6f 6e 3b 0a 7d 0a 61 6c 69 61 73 20 4c 44 41 50  on;.}.alias LDAP
2310: 41 50 49 49 6e 66 6f 57 2a 20 50 4c 44 41 50 41  APIInfoW* PLDAPA
2320: 50 49 49 6e 66 6f 57 3b 0a 0a 73 74 72 75 63 74  PIInfoW;..struct
2330: 20 4c 44 41 50 41 50 49 46 65 61 74 75 72 65 49   LDAPAPIFeatureI
2340: 6e 66 6f 41 20 7b 0a 09 69 6e 74 20 20 20 6c 64  nfoA {..int   ld
2350: 61 70 61 69 66 5f 69 6e 66 6f 5f 76 65 72 73 69  apaif_info_versi
2360: 6f 6e 3b 0a 09 63 68 61 72 2a 20 6c 64 61 70 61  on;..char* ldapa
2370: 69 66 5f 6e 61 6d 65 3b 0a 09 69 6e 74 20 20 20  if_name;..int   
2380: 6c 64 61 70 61 69 66 5f 76 65 72 73 69 6f 6e 3b  ldapaif_version;
2390: 0a 7d 0a 61 6c 69 61 73 20 4c 44 41 50 41 50 49  .}.alias LDAPAPI
23a0: 46 65 61 74 75 72 65 49 6e 66 6f 41 2a 20 50 4c  FeatureInfoA* PL
23b0: 44 41 50 41 50 49 46 65 61 74 75 72 65 49 6e 66  DAPAPIFeatureInf
23c0: 6f 41 3b 0a 0a 73 74 72 75 63 74 20 4c 44 41 50  oA;..struct LDAP
23d0: 41 50 49 46 65 61 74 75 72 65 49 6e 66 6f 57 20  APIFeatureInfoW 
23e0: 7b 0a 09 69 6e 74 20 20 20 20 6c 64 61 70 61 69  {..int    ldapai
23f0: 66 5f 69 6e 66 6f 5f 76 65 72 73 69 6f 6e 3b 0a  f_info_version;.
2400: 09 50 57 43 48 41 52 20 6c 64 61 70 61 69 66 5f  .PWCHAR ldapaif_
2410: 6e 61 6d 65 3b 0a 09 69 6e 74 20 20 20 20 6c 64  name;..int    ld
2420: 61 70 61 69 66 5f 76 65 72 73 69 6f 6e 3b 0a 7d  apaif_version;.}
2430: 0a 61 6c 69 61 73 20 4c 44 41 50 41 50 49 46 65  .alias LDAPAPIFe
2440: 61 74 75 72 65 49 6e 66 6f 57 2a 20 50 4c 44 41  atureInfoW* PLDA
2450: 50 41 50 49 46 65 61 74 75 72 65 49 6e 66 6f 57  PAPIFeatureInfoW
2460: 3b 0a 0a 73 74 72 75 63 74 20 4c 44 41 50 43 6f  ;..struct LDAPCo
2470: 6e 74 72 6f 6c 41 20 7b 0a 09 50 43 48 41 52 20  ntrolA {..PCHAR 
2480: 20 20 20 6c 64 63 74 6c 5f 6f 69 64 3b 0a 09 42     ldctl_oid;..B
2490: 65 72 56 61 6c 75 65 20 6c 64 63 74 6c 5f 76 61  erValue ldctl_va
24a0: 6c 75 65 3b 0a 09 42 4f 4f 4c 45 41 4e 20 20 6c  lue;..BOOLEAN  l
24b0: 64 63 74 6c 5f 69 73 63 72 69 74 69 63 61 6c 3b  dctl_iscritical;
24c0: 0a 7d 0a 61 6c 69 61 73 20 4c 44 41 50 43 6f 6e  .}.alias LDAPCon
24d0: 74 72 6f 6c 41 2a 20 50 4c 44 41 50 43 6f 6e 74  trolA* PLDAPCont
24e0: 72 6f 6c 41 3b 0a 0a 73 74 72 75 63 74 20 4c 44  rolA;..struct LD
24f0: 41 50 43 6f 6e 74 72 6f 6c 57 20 7b 0a 09 50 57  APControlW {..PW
2500: 43 48 41 52 20 20 20 6c 64 63 74 6c 5f 6f 69 64  CHAR   ldctl_oid
2510: 3b 0a 09 42 65 72 56 61 6c 75 65 20 6c 64 63 74  ;..BerValue ldct
2520: 6c 5f 76 61 6c 75 65 3b 0a 09 42 4f 4f 4c 45 41  l_value;..BOOLEA
2530: 4e 20 20 6c 64 63 74 6c 5f 69 73 63 72 69 74 69  N  ldctl_iscriti
2540: 63 61 6c 3b 0a 7d 0a 61 6c 69 61 73 20 4c 44 41  cal;.}.alias LDA
2550: 50 43 6f 6e 74 72 6f 6c 57 2a 20 50 4c 44 41 50  PControlW* PLDAP
2560: 43 6f 6e 74 72 6f 6c 57 3b 0a 0a 2f 2a 09 44 6f  ControlW;../*.Do
2570: 20 77 65 20 72 65 61 6c 6c 79 20 6e 65 65 64 20   we really need 
2580: 74 68 65 73 65 3f 20 20 49 6e 20 4d 69 6e 47 57  these?  In MinGW
2590: 2c 20 4c 44 41 50 4d 6f 64 41 2f 57 20 68 61 76  , LDAPModA/W hav
25a0: 65 20 6f 6e 6c 79 20 6d 6f 64 5f 6f 70 2c 20 6d  e only mod_op, m
25b0: 6f 64 5f 74 79 70 65 0a 20 2a 09 61 6e 64 20 6d  od_type. *.and m
25c0: 6f 64 5f 76 61 6c 73 2c 20 61 6e 64 20 6d 61 63  od_vals, and mac
25d0: 72 6f 73 20 61 72 65 20 75 73 65 64 20 74 6f 20  ros are used to 
25e0: 73 69 6d 75 6c 61 74 65 20 61 6e 6f 6e 79 6d 6f  simulate anonymo
25f0: 75 73 20 75 6e 69 6f 6e 73 20 69 6e 20 74 68 6f  us unions in tho
2600: 73 65 0a 20 2a 09 73 74 72 75 63 74 75 72 65 73  se. *.structures
2610: 2e 0a 20 2a 2f 0a 75 6e 69 6f 6e 20 6d 6f 64 5f  .. */.union mod_
2620: 76 61 6c 73 5f 75 5f 74 41 20 7b 0a 09 50 43 48  vals_u_tA {..PCH
2630: 41 52 2a 20 20 20 20 20 6d 6f 64 76 5f 73 74 72  AR*     modv_str
2640: 76 61 6c 73 3b 0a 09 42 65 72 56 61 6c 75 65 2a  vals;..BerValue*
2650: 2a 20 6d 6f 64 76 5f 62 76 61 6c 73 3b 0a 7d 0a  * modv_bvals;.}.
2660: 0a 75 6e 69 6f 6e 20 6d 6f 64 5f 76 61 6c 73 5f  .union mod_vals_
2670: 75 5f 74 57 20 7b 0a 09 50 57 43 48 41 52 2a 20  u_tW {..PWCHAR* 
2680: 20 20 20 6d 6f 64 76 5f 73 74 72 76 61 6c 73 3b     modv_strvals;
2690: 0a 09 42 65 72 56 61 6c 75 65 2a 2a 20 6d 6f 64  ..BerValue** mod
26a0: 76 5f 62 76 61 6c 73 3b 0a 7d 0a 0a 73 74 72 75  v_bvals;.}..stru
26b0: 63 74 20 4c 44 41 50 4d 6f 64 41 20 7b 0a 09 55  ct LDAPModA {..U
26c0: 4c 4f 4e 47 20 20 20 20 20 20 20 20 20 6d 6f 64  LONG         mod
26d0: 5f 6f 70 3b 0a 09 50 43 48 41 52 20 20 20 20 20  _op;..PCHAR     
26e0: 20 20 20 20 6d 6f 64 5f 74 79 70 65 3b 0a 0a 09      mod_type;...
26f0: 75 6e 69 6f 6e 20 7b 0a 09 09 6d 6f 64 5f 76 61  union {...mod_va
2700: 6c 73 5f 75 5f 74 41 20 6d 6f 64 5f 76 61 6c 73  ls_u_tA mod_vals
2710: 3b 0a 09 09 2f 2f 20 54 68 65 20 66 6f 6c 6c 6f  ;...// The follo
2720: 77 69 6e 67 20 6d 65 6d 62 65 72 73 20 61 72 65  wing members are
2730: 20 64 65 66 69 6e 65 64 20 61 73 20 6d 61 63 72   defined as macr
2740: 6f 73 20 69 6e 20 4d 69 6e 47 57 2e 0a 09 09 50  os in MinGW....P
2750: 43 48 41 52 2a 20 20 20 20 20 20 20 20 6d 6f 64  CHAR*        mod
2760: 5f 76 61 6c 75 65 73 3b 0a 09 09 42 65 72 56 61  _values;...BerVa
2770: 6c 75 65 2a 2a 20 20 20 20 6d 6f 64 5f 62 76 61  lue**    mod_bva
2780: 6c 75 65 73 3b 0a 09 7d 0a 7d 0a 61 6c 69 61 73  lues;..}.}.alias
2790: 20 4c 44 41 50 4d 6f 64 41 2a 20 50 4c 44 41 50   LDAPModA* PLDAP
27a0: 4d 6f 64 41 3b 0a 0a 73 74 72 75 63 74 20 4c 44  ModA;..struct LD
27b0: 41 50 4d 6f 64 57 20 7b 0a 09 55 4c 4f 4e 47 20  APModW {..ULONG 
27c0: 20 20 20 20 20 20 20 20 6d 6f 64 5f 6f 70 3b 0a          mod_op;.
27d0: 09 50 57 43 48 41 52 20 20 20 20 20 20 20 20 6d  .PWCHAR        m
27e0: 6f 64 5f 74 79 70 65 3b 0a 0a 09 75 6e 69 6f 6e  od_type;...union
27f0: 20 7b 0a 09 09 6d 6f 64 5f 76 61 6c 73 5f 75 5f   {...mod_vals_u_
2800: 74 57 20 6d 6f 64 5f 76 61 6c 73 3b 0a 09 09 2f  tW mod_vals;.../
2810: 2f 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20  / The following 
2820: 6d 65 6d 62 65 72 73 20 61 72 65 20 64 65 66 69  members are defi
2830: 6e 65 64 20 61 73 20 6d 61 63 72 6f 73 20 69 6e  ned as macros in
2840: 20 4d 69 6e 47 57 2e 0a 09 09 50 57 43 48 41 52   MinGW....PWCHAR
2850: 2a 20 20 20 20 20 20 20 6d 6f 64 5f 76 61 6c 75  *       mod_valu
2860: 65 73 3b 0a 09 09 42 65 72 56 61 6c 75 65 2a 2a  es;...BerValue**
2870: 20 20 20 20 6d 6f 64 5f 62 76 61 6c 75 65 73 3b      mod_bvalues;
2880: 0a 09 7d 0a 7d 0a 61 6c 69 61 73 20 4c 44 41 50  ..}.}.alias LDAP
2890: 4d 6f 64 57 2a 20 50 4c 44 41 50 4d 6f 64 57 3b  ModW* PLDAPModW;
28a0: 0a 0a 2f 2a 20 4f 70 61 71 75 65 20 73 74 72 75  ../* Opaque stru
28b0: 63 74 75 72 65 0a 20 2a 09 68 74 74 70 3a 2f 2f  cture. *.http://
28c0: 6d 73 64 6e 2e 6d 69 63 72 6f 73 6f 66 74 2e 63  msdn.microsoft.c
28d0: 6f 6d 2f 6c 69 62 72 61 72 79 2f 65 6e 2d 75 73  om/library/en-us
28e0: 2f 6c 64 61 70 2f 6c 64 61 70 2f 6c 64 61 70 73  /ldap/ldap/ldaps
28f0: 65 61 72 63 68 2e 61 73 70 0a 20 2a 2f 0a 73 74  earch.asp. */.st
2900: 72 75 63 74 20 4c 44 41 50 53 65 61 72 63 68 3b  ruct LDAPSearch;
2910: 0a 61 6c 69 61 73 20 4c 44 41 50 53 65 61 72 63  .alias LDAPSearc
2920: 68 2a 20 50 4c 44 41 50 53 65 61 72 63 68 3b 0a  h* PLDAPSearch;.
2930: 0a 73 74 72 75 63 74 20 4c 44 41 50 53 6f 72 74  .struct LDAPSort
2940: 4b 65 79 41 20 7b 0a 09 50 43 48 41 52 20 20 20  KeyA {..PCHAR   
2950: 73 6b 5f 61 74 74 72 74 79 70 65 3b 0a 09 50 43  sk_attrtype;..PC
2960: 48 41 52 20 20 20 73 6b 5f 6d 61 74 63 68 72 75  HAR   sk_matchru
2970: 6c 65 6f 69 64 3b 0a 09 42 4f 4f 4c 45 41 4e 20  leoid;..BOOLEAN 
2980: 73 6b 5f 72 65 76 65 72 73 65 6f 72 64 65 72 3b  sk_reverseorder;
2990: 0a 7d 0a 61 6c 69 61 73 20 4c 44 41 50 53 6f 72  .}.alias LDAPSor
29a0: 74 4b 65 79 41 2a 20 50 4c 44 41 50 53 6f 72 74  tKeyA* PLDAPSort
29b0: 4b 65 79 41 3b 0a 0a 73 74 72 75 63 74 20 4c 44  KeyA;..struct LD
29c0: 41 50 53 6f 72 74 4b 65 79 57 20 7b 0a 09 50 57  APSortKeyW {..PW
29d0: 43 48 41 52 20 20 73 6b 5f 61 74 74 72 74 79 70  CHAR  sk_attrtyp
29e0: 65 3b 0a 09 50 57 43 48 41 52 20 20 73 6b 5f 6d  e;..PWCHAR  sk_m
29f0: 61 74 63 68 72 75 6c 65 6f 69 64 3b 0a 09 42 4f  atchruleoid;..BO
2a00: 4f 4c 45 41 4e 20 73 6b 5f 72 65 76 65 72 73 65  OLEAN sk_reverse
2a10: 6f 72 64 65 72 3b 0a 7d 0a 61 6c 69 61 73 20 4c  order;.}.alias L
2a20: 44 41 50 53 6f 72 74 4b 65 79 57 2a 20 50 4c 44  DAPSortKeyW* PLD
2a30: 41 50 53 6f 72 74 4b 65 79 57 3b 0a 0a 2f 2a 09  APSortKeyW;../*.
2a40: 4d 69 6e 47 57 20 64 65 66 69 6e 65 73 20 74 68  MinGW defines th
2a50: 65 73 65 20 61 73 20 69 6d 6d 65 64 69 61 74 65  ese as immediate
2a60: 20 66 75 6e 63 74 69 6f 6e 20 74 79 70 65 64 65   function typede
2a70: 66 73 2c 20 77 68 69 63 68 20 64 6f 6e 27 74 20  fs, which don't 
2a80: 74 72 61 6e 73 6c 61 74 65 0a 20 2a 09 77 65 6c  translate. *.wel
2a90: 6c 20 69 6e 74 6f 20 44 2e 0a 20 2a 2f 0a 65 78  l into D.. */.ex
2aa0: 74 65 72 6e 20 28 43 29 20 7b 0a 09 61 6c 69 61  tern (C) {..alia
2ab0: 73 20 55 4c 4f 4e 47 20 66 75 6e 63 74 69 6f 6e  s ULONG function
2ac0: 28 50 4c 44 41 50 2c 20 50 4c 44 41 50 2c 20 50  (PLDAP, PLDAP, P
2ad0: 57 43 48 41 52 2c 20 50 43 48 41 52 2c 20 55 4c  WCHAR, PCHAR, UL
2ae0: 4f 4e 47 2c 20 50 56 4f 49 44 2c 20 50 56 4f 49  ONG, PVOID, PVOI
2af0: 44 2c 0a 09 20 20 50 4c 44 41 50 2a 29 20 51 55  D,..  PLDAP*) QU
2b00: 45 52 59 46 4f 52 43 4f 4e 4e 45 43 54 49 4f 4e  ERYFORCONNECTION
2b10: 3b 0a 09 61 6c 69 61 73 20 42 4f 4f 4c 45 41 4e  ;..alias BOOLEAN
2b20: 20 66 75 6e 63 74 69 6f 6e 28 50 4c 44 41 50 2c   function(PLDAP,
2b30: 20 50 4c 44 41 50 2c 20 50 57 43 48 41 52 2c 20   PLDAP, PWCHAR, 
2b40: 50 43 48 41 52 2c 20 50 4c 44 41 50 2c 20 55 4c  PCHAR, PLDAP, UL
2b50: 4f 4e 47 2c 20 50 56 4f 49 44 2c 0a 09 20 20 50  ONG, PVOID,..  P
2b60: 56 4f 49 44 2c 20 55 4c 4f 4e 47 29 20 4e 4f 54  VOID, ULONG) NOT
2b70: 49 46 59 4f 46 4e 45 57 43 4f 4e 4e 45 43 54 49  IFYOFNEWCONNECTI
2b80: 4f 4e 3b 0a 09 61 6c 69 61 73 20 55 4c 4f 4e 47  ON;..alias ULONG
2b90: 20 66 75 6e 63 74 69 6f 6e 28 50 4c 44 41 50 2c   function(PLDAP,
2ba0: 20 50 4c 44 41 50 29 20 44 45 52 45 46 45 52 45   PLDAP) DEREFERE
2bb0: 4e 43 45 43 4f 4e 4e 45 43 54 49 4f 4e 3b 0a 09  NCECONNECTION;..
2bc0: 61 6c 69 61 73 20 42 4f 4f 4c 45 41 4e 20 66 75  alias BOOLEAN fu
2bd0: 6e 63 74 69 6f 6e 28 50 4c 44 41 50 2c 20 50 53  nction(PLDAP, PS
2be0: 65 63 50 6b 67 43 6f 6e 74 65 78 74 5f 49 73 73  ecPkgContext_Iss
2bf0: 75 65 72 4c 69 73 74 49 6e 66 6f 45 78 2c 0a 09  uerListInfoEx,..
2c00: 20 20 50 43 43 45 52 54 5f 43 4f 4e 54 45 58 54    PCCERT_CONTEXT
2c10: 2a 29 20 51 55 45 52 59 43 4c 49 45 4e 54 43 45  *) QUERYCLIENTCE
2c20: 52 54 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 4c 44  RT;.}..struct LD
2c30: 41 50 5f 52 45 46 45 52 52 41 4c 5f 43 41 4c 4c  AP_REFERRAL_CALL
2c40: 42 41 43 4b 20 7b 0a 09 55 4c 4f 4e 47 20 20 20  BACK {..ULONG   
2c50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53                 S
2c60: 69 7a 65 4f 66 43 61 6c 6c 62 61 63 6b 73 3b 0a  izeOfCallbacks;.
2c70: 09 51 55 45 52 59 46 4f 52 43 4f 4e 4e 45 43 54  .QUERYFORCONNECT
2c80: 49 4f 4e 2a 20 20 20 20 51 75 65 72 79 46 6f 72  ION*    QueryFor
2c90: 43 6f 6e 6e 65 63 74 69 6f 6e 3b 0a 09 4e 4f 54  Connection;..NOT
2ca0: 49 46 59 4f 46 4e 45 57 43 4f 4e 4e 45 43 54 49  IFYOFNEWCONNECTI
2cb0: 4f 4e 2a 20 4e 6f 74 69 66 79 52 6f 75 74 69 6e  ON* NotifyRoutin
2cc0: 65 3b 0a 09 44 45 52 45 46 45 52 45 4e 43 45 43  e;..DEREFERENCEC
2cd0: 4f 4e 4e 45 43 54 49 4f 4e 2a 20 44 65 72 65 66  ONNECTION* Deref
2ce0: 65 72 65 6e 63 65 52 6f 75 74 69 6e 65 3b 0a 7d  erenceRoutine;.}
2cf0: 0a 61 6c 69 61 73 20 4c 44 41 50 5f 52 45 46 45  .alias LDAP_REFE
2d00: 52 52 41 4c 5f 43 41 4c 4c 42 41 43 4b 2a 20 50  RRAL_CALLBACK* P
2d10: 4c 44 41 50 5f 52 45 46 45 52 52 41 4c 5f 43 41  LDAP_REFERRAL_CA
2d20: 4c 4c 42 41 43 4b 3b 0a 0a 73 74 72 75 63 74 20  LLBACK;..struct 
2d30: 4c 44 41 50 56 4c 56 49 6e 66 6f 20 7b 0a 09 69  LDAPVLVInfo {..i
2d40: 6e 74 20 20 20 20 20 20 20 6c 64 76 6c 76 5f 76  nt       ldvlv_v
2d50: 65 72 73 69 6f 6e 3b 0a 09 75 69 6e 74 20 20 20  ersion;..uint   
2d60: 20 20 20 6c 64 76 6c 76 5f 62 65 66 6f 72 65 5f     ldvlv_before_
2d70: 63 6f 75 6e 74 3b 0a 09 75 69 6e 74 20 20 20 20  count;..uint    
2d80: 20 20 6c 64 76 6c 76 5f 61 66 74 65 72 5f 63 6f    ldvlv_after_co
2d90: 75 6e 74 3b 0a 09 75 69 6e 74 20 20 20 20 20 20  unt;..uint      
2da0: 6c 64 76 6c 76 5f 6f 66 66 73 65 74 3b 0a 09 75  ldvlv_offset;..u
2db0: 69 6e 74 20 20 20 20 20 20 6c 64 76 6c 76 5f 63  int      ldvlv_c
2dc0: 6f 75 6e 74 3b 0a 09 42 65 72 56 61 6c 75 65 2a  ount;..BerValue*
2dd0: 20 6c 64 76 6c 76 5f 61 74 74 72 76 61 6c 75 65   ldvlv_attrvalue
2de0: 3b 0a 09 42 65 72 56 61 6c 75 65 2a 20 6c 64 76  ;..BerValue* ldv
2df0: 6c 76 5f 63 6f 6e 74 65 78 74 3b 0a 09 76 6f 69  lv_context;..voi
2e00: 64 2a 20 20 20 20 20 6c 64 76 6c 76 5f 65 78 74  d*     ldvlv_ext
2e10: 72 61 64 61 74 61 3b 0a 7d 0a 0a 2f 2a 0a 20 2a  radata;.}../*. *
2e20: 20 55 6e 64 65 72 20 4d 69 63 72 6f 73 6f 66 74   Under Microsoft
2e30: 20 57 69 6e 4c 44 41 50 20 74 68 65 20 66 75 6e   WinLDAP the fun
2e40: 63 74 69 6f 6e 20 6c 64 61 70 5f 65 72 72 6f 72  ction ldap_error
2e50: 20 69 73 20 6f 6e 6c 79 20 73 74 75 62 2e 0a 20   is only stub.. 
2e60: 2a 20 54 68 69 73 20 6d 61 63 72 6f 20 75 73 65  * This macro use
2e70: 73 20 4c 44 41 50 20 73 74 72 75 63 74 75 72 65  s LDAP structure
2e80: 20 74 6f 20 67 65 74 20 65 72 72 6f 72 20 73 74   to get error st
2e90: 72 69 6e 67 20 61 6e 64 20 70 61 73 73 20 69 74  ring and pass it
2ea0: 20 74 6f 20 74 68 65 20 75 73 65 72 2e 0a 20 2a   to the user.. *
2eb0: 2f 0a 70 72 69 76 61 74 65 20 65 78 74 65 72 6e  /.private extern
2ec0: 20 28 43 29 20 69 6e 74 20 70 72 69 6e 74 66 28   (C) int printf(
2ed0: 69 6e 20 63 68 61 72 2a 20 66 6f 72 6d 61 74 2c  in char* format,
2ee0: 20 2e 2e 2e 29 3b 20 0a 69 6e 74 20 6c 64 61 70   ...); .int ldap
2ef0: 5f 70 65 72 72 6f 72 28 4c 44 41 50 2a 20 68 61  _perror(LDAP* ha
2f00: 6e 64 6c 65 2c 20 63 68 61 72 2a 20 6d 65 73 73  ndle, char* mess
2f10: 61 67 65 29 20 7b 0a 09 72 65 74 75 72 6e 20 70  age) {..return p
2f20: 72 69 6e 74 66 28 22 25 73 3a 20 25 73 5c 6e 22  rintf("%s: %s\n"
2f30: 2c 20 6d 65 73 73 61 67 65 2c 20 68 61 6e 64 6c  , message, handl
2f40: 65 2e 6c 64 5f 65 72 72 6f 72 29 3b 0a 7d 0a 0a  e.ld_error);.}..
2f50: 2f 2a 09 46 49 58 4d 45 3a 20 49 6e 20 4d 69 6e  /*.FIXME: In Min
2f60: 47 57 2c 20 74 68 65 73 65 20 61 72 65 20 57 49  GW, these are WI
2f70: 4e 4c 44 41 50 41 50 49 20 3d 3d 20 44 45 43 4c  NLDAPAPI == DECL
2f80: 53 50 45 43 5f 49 4d 50 4f 52 54 2e 20 20 4c 69  SPEC_IMPORT.  Li
2f90: 6e 6b 61 67 65 0a 20 2a 09 61 74 74 72 69 62 75  nkage. *.attribu
2fa0: 74 65 3f 0a 20 2a 2f 0a 65 78 74 65 72 6e 20 28  te?. */.extern (
2fb0: 43 29 20 7b 0a 09 50 4c 44 41 50 20 6c 64 61 70  C) {..PLDAP ldap
2fc0: 5f 69 6e 69 74 41 28 50 43 48 41 52 2c 20 55 4c  _initA(PCHAR, UL
2fd0: 4f 4e 47 29 3b 0a 09 50 4c 44 41 50 20 6c 64 61  ONG);..PLDAP lda
2fe0: 70 5f 69 6e 69 74 57 28 50 57 43 48 41 52 2c 20  p_initW(PWCHAR, 
2ff0: 55 4c 4f 4e 47 29 3b 0a 09 50 4c 44 41 50 20 6c  ULONG);..PLDAP l
3000: 64 61 70 5f 6f 70 65 6e 41 28 50 43 48 41 52 2c  dap_openA(PCHAR,
3010: 20 55 4c 4f 4e 47 29 3b 0a 09 50 4c 44 41 50 20   ULONG);..PLDAP 
3020: 6c 64 61 70 5f 6f 70 65 6e 57 28 50 57 43 48 41  ldap_openW(PWCHA
3030: 52 2c 20 55 4c 4f 4e 47 29 3b 0a 09 50 4c 44 41  R, ULONG);..PLDA
3040: 50 20 63 6c 64 61 70 5f 6f 70 65 6e 41 28 50 43  P cldap_openA(PC
3050: 48 41 52 2c 20 55 4c 4f 4e 47 29 3b 0a 09 50 4c  HAR, ULONG);..PL
3060: 44 41 50 20 63 6c 64 61 70 5f 6f 70 65 6e 57 28  DAP cldap_openW(
3070: 50 57 43 48 41 52 2c 20 55 4c 4f 4e 47 29 3b 0a  PWCHAR, ULONG);.
3080: 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 63 6f 6e 6e  .ULONG ldap_conn
3090: 65 63 74 28 4c 44 41 50 2a 2c 20 4c 44 41 50 5f  ect(LDAP*, LDAP_
30a0: 54 49 4d 45 56 41 4c 2a 29 3b 0a 09 50 4c 44 41  TIMEVAL*);..PLDA
30b0: 50 20 6c 64 61 70 5f 73 73 6c 69 6e 69 74 41 28  P ldap_sslinitA(
30c0: 50 43 48 41 52 2c 20 55 4c 4f 4e 47 2c 20 69 6e  PCHAR, ULONG, in
30d0: 74 29 3b 0a 09 50 4c 44 41 50 20 6c 64 61 70 5f  t);..PLDAP ldap_
30e0: 73 73 6c 69 6e 69 74 57 28 50 57 43 48 41 52 2c  sslinitW(PWCHAR,
30f0: 20 55 4c 4f 4e 47 2c 20 69 6e 74 29 3b 0a 09 55   ULONG, int);..U
3100: 4c 4f 4e 47 20 6c 64 61 70 5f 73 74 61 72 74 5f  LONG ldap_start_
3110: 74 6c 73 5f 73 41 28 4c 44 41 50 2a 2c 20 50 4c  tls_sA(LDAP*, PL
3120: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 50 4c  DAPControlA*, PL
3130: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 29 3b 0a 09  DAPControlA*);..
3140: 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 74 61 72 74  ULONG ldap_start
3150: 5f 74 6c 73 5f 73 57 28 4c 44 41 50 2a 2c 20 50  _tls_sW(LDAP*, P
3160: 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 20 50  LDAPControlW*, P
3170: 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 29 3b 0a  LDAPControlW*);.
3180: 09 42 4f 4f 4c 45 41 4e 20 6c 64 61 70 5f 73 74  .BOOLEAN ldap_st
3190: 6f 70 5f 74 6c 73 5f 73 28 4c 44 41 50 2a 29 3b  op_tls_s(LDAP*);
31a0: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 67 65 74  ..ULONG ldap_get
31b0: 5f 6f 70 74 69 6f 6e 41 28 4c 44 41 50 2a 2c 20  _optionA(LDAP*, 
31c0: 69 6e 74 2c 20 76 6f 69 64 2a 29 3b 0a 09 55 4c  int, void*);..UL
31d0: 4f 4e 47 20 6c 64 61 70 5f 67 65 74 5f 6f 70 74  ONG ldap_get_opt
31e0: 69 6f 6e 57 28 4c 44 41 50 2a 2c 20 69 6e 74 2c  ionW(LDAP*, int,
31f0: 20 76 6f 69 64 2a 29 3b 0a 09 55 4c 4f 4e 47 20   void*);..ULONG 
3200: 6c 64 61 70 5f 73 65 74 5f 6f 70 74 69 6f 6e 41  ldap_set_optionA
3210: 28 4c 44 41 50 2a 2c 20 69 6e 74 2c 20 76 6f 69  (LDAP*, int, voi
3220: 64 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70  d*);..ULONG ldap
3230: 5f 73 65 74 5f 6f 70 74 69 6f 6e 57 28 4c 44 41  _set_optionW(LDA
3240: 50 2a 2c 20 69 6e 74 2c 20 76 6f 69 64 2a 29 3b  P*, int, void*);
3250: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 63 6f 6e  ..ULONG ldap_con
3260: 74 72 6f 6c 5f 66 72 65 65 41 28 4c 44 41 50 43  trol_freeA(LDAPC
3270: 6f 6e 74 72 6f 6c 41 2a 29 3b 0a 09 55 4c 4f 4e  ontrolA*);..ULON
3280: 47 20 6c 64 61 70 5f 63 6f 6e 74 72 6f 6c 5f 66  G ldap_control_f
3290: 72 65 65 57 28 4c 44 41 50 43 6f 6e 74 72 6f 6c  reeW(LDAPControl
32a0: 57 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70  W*);..ULONG ldap
32b0: 5f 63 6f 6e 74 72 6f 6c 73 5f 66 72 65 65 41 28  _controls_freeA(
32c0: 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2a 29 3b  LDAPControlA**);
32d0: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 63 6f 6e  ..ULONG ldap_con
32e0: 74 72 6f 6c 73 5f 66 72 65 65 57 28 4c 44 41 50  trols_freeW(LDAP
32f0: 43 6f 6e 74 72 6f 6c 57 2a 2a 29 3b 0a 09 55 4c  ControlW**);..UL
3300: 4f 4e 47 20 6c 64 61 70 5f 66 72 65 65 5f 63 6f  ONG ldap_free_co
3310: 6e 74 72 6f 6c 73 41 28 4c 44 41 50 43 6f 6e 74  ntrolsA(LDAPCont
3320: 72 6f 6c 41 2a 2a 29 3b 0a 09 55 4c 4f 4e 47 20  rolA**);..ULONG 
3330: 6c 64 61 70 5f 66 72 65 65 5f 63 6f 6e 74 72 6f  ldap_free_contro
3340: 6c 73 57 28 4c 44 41 50 43 6f 6e 74 72 6f 6c 57  lsW(LDAPControlW
3350: 2a 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70  **);..ULONG ldap
3360: 5f 73 61 73 6c 5f 62 69 6e 64 41 28 4c 44 41 50  _sasl_bindA(LDAP
3370: 2a 2c 20 50 43 48 41 52 2c 20 50 43 48 41 52 2c  *, PCHAR, PCHAR,
3380: 20 42 45 52 56 41 4c 2a 2c 20 50 4c 44 41 50 43   BERVAL*, PLDAPC
3390: 6f 6e 74 72 6f 6c 41 2a 2c 0a 09 20 20 50 4c 44  ontrolA*,..  PLD
33a0: 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 69 6e 74  APControlA*, int
33b0: 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  *);..ULONG ldap_
33c0: 73 61 73 6c 5f 62 69 6e 64 57 28 4c 44 41 50 2a  sasl_bindW(LDAP*
33d0: 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48 41 52  , PWCHAR, PWCHAR
33e0: 2c 20 42 45 52 56 41 4c 2a 2c 20 50 4c 44 41 50  , BERVAL*, PLDAP
33f0: 43 6f 6e 74 72 6f 6c 57 2a 2c 0a 09 20 20 50 4c  ControlW*,..  PL
3400: 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 20 69 6e  DAPControlW*, in
3410: 74 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70  t*);..ULONG ldap
3420: 5f 73 61 73 6c 5f 62 69 6e 64 5f 73 41 28 4c 44  _sasl_bind_sA(LD
3430: 41 50 2a 2c 20 50 43 48 41 52 2c 20 50 43 48 41  AP*, PCHAR, PCHA
3440: 52 2c 20 42 45 52 56 41 4c 2a 2c 20 50 4c 44 41  R, BERVAL*, PLDA
3450: 50 43 6f 6e 74 72 6f 6c 41 2a 2c 0a 09 20 20 50  PControlA*,..  P
3460: 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 50  LDAPControlA*, P
3470: 42 45 52 56 41 4c 2a 29 3b 0a 09 55 4c 4f 4e 47  BERVAL*);..ULONG
3480: 20 6c 64 61 70 5f 73 61 73 6c 5f 62 69 6e 64 5f   ldap_sasl_bind_
3490: 73 57 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52  sW(LDAP*, PWCHAR
34a0: 2c 20 50 57 43 48 41 52 2c 20 42 45 52 56 41 4c  , PWCHAR, BERVAL
34b0: 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57  *, PLDAPControlW
34c0: 2a 2c 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72  *,..  PLDAPContr
34d0: 6f 6c 57 2a 2c 20 50 42 45 52 56 41 4c 2a 29 3b  olW*, PBERVAL*);
34e0: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 69 6d  ..ULONG ldap_sim
34f0: 70 6c 65 5f 62 69 6e 64 41 28 4c 44 41 50 2a 2c  ple_bindA(LDAP*,
3500: 20 50 43 48 41 52 2c 20 50 43 48 41 52 29 3b 0a   PCHAR, PCHAR);.
3510: 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 69 6d 70  .ULONG ldap_simp
3520: 6c 65 5f 62 69 6e 64 57 28 4c 44 41 50 2a 2c 20  le_bindW(LDAP*, 
3530: 50 57 43 48 41 52 2c 20 50 57 43 48 41 52 29 3b  PWCHAR, PWCHAR);
3540: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 69 6d  ..ULONG ldap_sim
3550: 70 6c 65 5f 62 69 6e 64 5f 73 41 28 4c 44 41 50  ple_bind_sA(LDAP
3560: 2a 2c 20 50 43 48 41 52 2c 20 50 43 48 41 52 29  *, PCHAR, PCHAR)
3570: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 69  ;..ULONG ldap_si
3580: 6d 70 6c 65 5f 62 69 6e 64 5f 73 57 28 4c 44 41  mple_bind_sW(LDA
3590: 50 2a 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48  P*, PWCHAR, PWCH
35a0: 41 52 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70  AR);..ULONG ldap
35b0: 5f 75 6e 62 69 6e 64 28 4c 44 41 50 2a 29 3b 0a  _unbind(LDAP*);.
35c0: 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 75 6e 62 69  .ULONG ldap_unbi
35d0: 6e 64 5f 73 28 4c 44 41 50 2a 29 3b 0a 09 55 4c  nd_s(LDAP*);..UL
35e0: 4f 4e 47 20 6c 64 61 70 5f 73 65 61 72 63 68 5f  ONG ldap_search_
35f0: 65 78 74 41 28 4c 44 41 50 2a 2c 20 50 43 48 41  extA(LDAP*, PCHA
3600: 52 2c 20 55 4c 4f 4e 47 2c 20 50 43 48 41 52 2c  R, ULONG, PCHAR,
3610: 20 50 43 48 41 52 5b 5d 2c 20 55 4c 4f 4e 47 2c   PCHAR[], ULONG,
3620: 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c  ..  PLDAPControl
3630: 57 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c  W*, PLDAPControl
3640: 57 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47  W*, ULONG, ULONG
3650: 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e  , ULONG*);..ULON
3660: 47 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 65 78  G ldap_search_ex
3670: 74 57 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52  tW(LDAP*, PWCHAR
3680: 2c 20 55 4c 4f 4e 47 2c 20 50 57 43 48 41 52 2c  , ULONG, PWCHAR,
3690: 20 50 57 43 48 41 52 5b 5d 2c 20 55 4c 4f 4e 47   PWCHAR[], ULONG
36a0: 2c 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f  ,..  PLDAPContro
36b0: 6c 57 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f  lW*, PLDAPContro
36c0: 6c 57 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e  lW*, ULONG, ULON
36d0: 47 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 09 55 4c 4f  G, ULONG*);..ULO
36e0: 4e 47 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 65  NG ldap_search_e
36f0: 78 74 5f 73 41 28 4c 44 41 50 2a 2c 20 50 43 48  xt_sA(LDAP*, PCH
3700: 41 52 2c 20 55 4c 4f 4e 47 2c 20 50 43 48 41 52  AR, ULONG, PCHAR
3710: 2c 20 50 43 48 41 52 5b 5d 2c 20 55 4c 4f 4e 47  , PCHAR[], ULONG
3720: 2c 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f  ,..  PLDAPContro
3730: 6c 41 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f  lA*, PLDAPContro
3740: 6c 41 2a 2c 20 4c 44 41 50 5f 54 49 4d 45 56 41  lA*, LDAP_TIMEVA
3750: 4c 2a 2c 20 55 4c 4f 4e 47 2c 20 4c 44 41 50 4d  L*, ULONG, LDAPM
3760: 65 73 73 61 67 65 2a 2a 29 3b 0a 09 55 4c 4f 4e  essage**);..ULON
3770: 47 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 65 78  G ldap_search_ex
3780: 74 5f 73 57 28 4c 44 41 50 2a 2c 20 50 57 43 48  t_sW(LDAP*, PWCH
3790: 41 52 2c 20 55 4c 4f 4e 47 2c 20 50 57 43 48 41  AR, ULONG, PWCHA
37a0: 52 2c 20 50 57 43 48 41 52 5b 5d 2c 20 55 4c 4f  R, PWCHAR[], ULO
37b0: 4e 47 2c 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74  NG,..  PLDAPCont
37c0: 72 6f 6c 57 2a 2c 20 50 4c 44 41 50 43 6f 6e 74  rolW*, PLDAPCont
37d0: 72 6f 6c 57 2a 2c 20 4c 44 41 50 5f 54 49 4d 45  rolW*, LDAP_TIME
37e0: 56 41 4c 2a 2c 20 55 4c 4f 4e 47 2c 20 4c 44 41  VAL*, ULONG, LDA
37f0: 50 4d 65 73 73 61 67 65 2a 2a 29 3b 0a 09 55 4c  PMessage**);..UL
3800: 4f 4e 47 20 6c 64 61 70 5f 73 65 61 72 63 68 41  ONG ldap_searchA
3810: 28 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c 20 55  (LDAP*, PCHAR, U
3820: 4c 4f 4e 47 2c 20 50 43 48 41 52 2c 20 50 43 48  LONG, PCHAR, PCH
3830: 41 52 5b 5d 2c 20 55 4c 4f 4e 47 29 3b 0a 09 55  AR[], ULONG);..U
3840: 4c 4f 4e 47 20 6c 64 61 70 5f 73 65 61 72 63 68  LONG ldap_search
3850: 57 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52 2c  W(LDAP*, PWCHAR,
3860: 20 55 4c 4f 4e 47 2c 20 50 57 43 48 41 52 2c 20   ULONG, PWCHAR, 
3870: 50 57 43 48 41 52 5b 5d 2c 20 55 4c 4f 4e 47 29  PWCHAR[], ULONG)
3880: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 65  ;..ULONG ldap_se
3890: 61 72 63 68 5f 73 41 28 4c 44 41 50 2a 2c 20 50  arch_sA(LDAP*, P
38a0: 43 48 41 52 2c 20 55 4c 4f 4e 47 2c 20 50 43 48  CHAR, ULONG, PCH
38b0: 41 52 2c 20 50 43 48 41 52 5b 5d 2c 20 55 4c 4f  AR, PCHAR[], ULO
38c0: 4e 47 2c 0a 09 20 20 4c 44 41 50 4d 65 73 73 61  NG,..  LDAPMessa
38d0: 67 65 2a 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64  ge**);..ULONG ld
38e0: 61 70 5f 73 65 61 72 63 68 5f 73 57 28 4c 44 41  ap_search_sW(LDA
38f0: 50 2a 2c 20 50 57 43 48 41 52 2c 20 55 4c 4f 4e  P*, PWCHAR, ULON
3900: 47 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48 41  G, PWCHAR, PWCHA
3910: 52 5b 5d 2c 20 55 4c 4f 4e 47 2c 0a 09 20 20 4c  R[], ULONG,..  L
3920: 44 41 50 4d 65 73 73 61 67 65 2a 2a 29 3b 0a 09  DAPMessage**);..
3930: 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 65 61 72 63  ULONG ldap_searc
3940: 68 5f 73 74 41 28 4c 44 41 50 2a 2c 20 50 43 48  h_stA(LDAP*, PCH
3950: 41 52 2c 20 55 4c 4f 4e 47 2c 20 50 43 48 41 52  AR, ULONG, PCHAR
3960: 2c 20 50 43 48 41 52 5b 5d 2c 20 55 4c 4f 4e 47  , PCHAR[], ULONG
3970: 2c 0a 09 20 20 4c 44 41 50 5f 54 49 4d 45 56 41  ,..  LDAP_TIMEVA
3980: 4c 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a  L*, LDAPMessage*
3990: 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  *);..ULONG ldap_
39a0: 73 65 61 72 63 68 5f 73 74 57 28 4c 44 41 50 2a  search_stW(LDAP*
39b0: 2c 20 50 57 43 48 41 52 2c 20 55 4c 4f 4e 47 2c  , PWCHAR, ULONG,
39c0: 20 50 57 43 48 41 52 2c 20 50 57 43 48 41 52 5b   PWCHAR, PWCHAR[
39d0: 5d 2c 20 55 4c 4f 4e 47 2c 0a 09 20 20 4c 44 41  ], ULONG,..  LDA
39e0: 50 5f 54 49 4d 45 56 41 4c 2a 2c 20 4c 44 41 50  P_TIMEVAL*, LDAP
39f0: 4d 65 73 73 61 67 65 2a 2a 29 3b 0a 09 55 4c 4f  Message**);..ULO
3a00: 4e 47 20 6c 64 61 70 5f 63 6f 6d 70 61 72 65 5f  NG ldap_compare_
3a10: 65 78 74 41 28 4c 44 41 50 2a 2c 20 50 43 48 41  extA(LDAP*, PCHA
3a20: 52 2c 20 50 43 48 41 52 2c 20 50 43 48 41 52 2c  R, PCHAR, PCHAR,
3a30: 20 42 65 72 56 61 6c 75 65 2a 2c 0a 09 20 20 50   BerValue*,..  P
3a40: 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 50  LDAPControlA*, P
3a50: 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 55  LDAPControlA*, U
3a60: 4c 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c  LONG*);..ULONG l
3a70: 64 61 70 5f 63 6f 6d 70 61 72 65 5f 65 78 74 57  dap_compare_extW
3a80: 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52 2c 20  (LDAP*, PWCHAR, 
3a90: 50 57 43 48 41 52 2c 20 50 57 43 48 41 52 2c 20  PWCHAR, PWCHAR, 
3aa0: 42 65 72 56 61 6c 75 65 2a 2c 0a 09 20 20 50 4c  BerValue*,..  PL
3ab0: 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 20 50 4c  DAPControlW*, PL
3ac0: 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 20 55 4c  DAPControlW*, UL
3ad0: 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64  ONG*);..ULONG ld
3ae0: 61 70 5f 63 6f 6d 70 61 72 65 5f 65 78 74 5f 73  ap_compare_ext_s
3af0: 41 28 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c 20  A(LDAP*, PCHAR, 
3b00: 50 43 48 41 52 2c 20 50 43 48 41 52 2c 20 42 65  PCHAR, PCHAR, Be
3b10: 72 56 61 6c 75 65 2a 2c 0a 09 20 20 50 4c 44 41  rValue*,..  PLDA
3b20: 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 50 4c 44 41  PControlA*, PLDA
3b30: 50 43 6f 6e 74 72 6f 6c 41 2a 29 3b 0a 09 55 4c  PControlA*);..UL
3b40: 4f 4e 47 20 6c 64 61 70 5f 63 6f 6d 70 61 72 65  ONG ldap_compare
3b50: 5f 65 78 74 5f 73 57 28 4c 44 41 50 2a 2c 20 50  _ext_sW(LDAP*, P
3b60: 57 43 48 41 52 2c 20 50 57 43 48 41 52 2c 20 50  WCHAR, PWCHAR, P
3b70: 57 43 48 41 52 2c 20 42 65 72 56 61 6c 75 65 2a  WCHAR, BerValue*
3b80: 2c 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f  ,..  PLDAPContro
3b90: 6c 57 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f  lW*, PLDAPContro
3ba0: 6c 57 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61  lW*);..ULONG lda
3bb0: 70 5f 63 6f 6d 70 61 72 65 41 28 4c 44 41 50 2a  p_compareA(LDAP*
3bc0: 2c 20 50 43 48 41 52 2c 20 50 43 48 41 52 2c 20  , PCHAR, PCHAR, 
3bd0: 50 43 48 41 52 29 3b 0a 09 55 4c 4f 4e 47 20 6c  PCHAR);..ULONG l
3be0: 64 61 70 5f 63 6f 6d 70 61 72 65 57 28 4c 44 41  dap_compareW(LDA
3bf0: 50 2a 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48  P*, PWCHAR, PWCH
3c00: 41 52 2c 20 50 57 43 48 41 52 29 3b 0a 09 55 4c  AR, PWCHAR);..UL
3c10: 4f 4e 47 20 6c 64 61 70 5f 63 6f 6d 70 61 72 65  ONG ldap_compare
3c20: 5f 73 41 28 4c 44 41 50 2a 2c 20 50 43 48 41 52  _sA(LDAP*, PCHAR
3c30: 2c 20 50 43 48 41 52 2c 20 50 43 48 41 52 29 3b  , PCHAR, PCHAR);
3c40: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 63 6f 6d  ..ULONG ldap_com
3c50: 70 61 72 65 5f 73 57 28 4c 44 41 50 2a 2c 20 50  pare_sW(LDAP*, P
3c60: 57 43 48 41 52 2c 20 50 57 43 48 41 52 2c 20 50  WCHAR, PWCHAR, P
3c70: 57 43 48 41 52 29 3b 0a 09 55 4c 4f 4e 47 20 6c  WCHAR);..ULONG l
3c80: 64 61 70 5f 6d 6f 64 69 66 79 5f 65 78 74 41 28  dap_modify_extA(
3c90: 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c 20 4c 44  LDAP*, PCHAR, LD
3ca0: 41 50 4d 6f 64 41 2a 5b 5d 2c 20 50 4c 44 41 50  APModA*[], PLDAP
3cb0: 43 6f 6e 74 72 6f 6c 41 2a 2c 0a 09 20 20 50 4c  ControlA*,..  PL
3cc0: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 55 4c  DAPControlA*, UL
3cd0: 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64  ONG*);..ULONG ld
3ce0: 61 70 5f 6d 6f 64 69 66 79 5f 65 78 74 57 28 4c  ap_modify_extW(L
3cf0: 44 41 50 2a 2c 20 50 57 43 48 41 52 2c 20 4c 44  DAP*, PWCHAR, LD
3d00: 41 50 4d 6f 64 57 2a 5b 5d 2c 20 50 4c 44 41 50  APModW*[], PLDAP
3d10: 43 6f 6e 74 72 6f 6c 57 2a 2c 0a 09 20 20 50 4c  ControlW*,..  PL
3d20: 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 20 55 4c  DAPControlW*, UL
3d30: 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64  ONG*);..ULONG ld
3d40: 61 70 5f 6d 6f 64 69 66 79 5f 65 78 74 5f 73 41  ap_modify_ext_sA
3d50: 28 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c 20 4c  (LDAP*, PCHAR, L
3d60: 44 41 50 4d 6f 64 41 2a 5b 5d 2c 20 50 4c 44 41  DAPModA*[], PLDA
3d70: 50 43 6f 6e 74 72 6f 6c 41 2a 2c 0a 09 20 20 50  PControlA*,..  P
3d80: 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 29 3b 0a  LDAPControlA*);.
3d90: 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 6d 6f 64 69  .ULONG ldap_modi
3da0: 66 79 5f 65 78 74 5f 73 57 28 4c 44 41 50 2a 2c  fy_ext_sW(LDAP*,
3db0: 20 50 57 43 48 41 52 2c 20 4c 44 41 50 4d 6f 64   PWCHAR, LDAPMod
3dc0: 57 2a 5b 5d 2c 20 50 4c 44 41 50 43 6f 6e 74 72  W*[], PLDAPContr
3dd0: 6f 6c 57 2a 2c 0a 09 20 20 50 4c 44 41 50 43 6f  olW*,..  PLDAPCo
3de0: 6e 74 72 6f 6c 57 2a 29 3b 0a 09 55 4c 4f 4e 47  ntrolW*);..ULONG
3df0: 20 6c 64 61 70 5f 6d 6f 64 69 66 79 41 28 4c 44   ldap_modifyA(LD
3e00: 41 50 2a 2c 20 50 43 48 41 52 2c 20 4c 44 41 50  AP*, PCHAR, LDAP
3e10: 4d 6f 64 41 2a 5b 5d 29 3b 0a 09 55 4c 4f 4e 47  ModA*[]);..ULONG
3e20: 20 6c 64 61 70 5f 6d 6f 64 69 66 79 57 28 4c 44   ldap_modifyW(LD
3e30: 41 50 2a 2c 20 50 57 43 48 41 52 2c 20 4c 44 41  AP*, PWCHAR, LDA
3e40: 50 4d 6f 64 57 2a 5b 5d 29 3b 0a 09 55 4c 4f 4e  PModW*[]);..ULON
3e50: 47 20 6c 64 61 70 5f 6d 6f 64 69 66 79 5f 73 41  G ldap_modify_sA
3e60: 28 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c 20 4c  (LDAP*, PCHAR, L
3e70: 44 41 50 4d 6f 64 41 2a 5b 5d 29 3b 0a 09 55 4c  DAPModA*[]);..UL
3e80: 4f 4e 47 20 6c 64 61 70 5f 6d 6f 64 69 66 79 5f  ONG ldap_modify_
3e90: 73 57 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52  sW(LDAP*, PWCHAR
3ea0: 2c 20 4c 44 41 50 4d 6f 64 57 2a 5b 5d 29 3b 0a  , LDAPModW*[]);.
3eb0: 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 72 65 6e 61  .ULONG ldap_rena
3ec0: 6d 65 5f 65 78 74 41 28 4c 44 41 50 2a 2c 20 50  me_extA(LDAP*, P
3ed0: 43 48 41 52 2c 20 50 43 48 41 52 2c 20 50 43 48  CHAR, PCHAR, PCH
3ee0: 41 52 2c 20 49 4e 54 2c 20 50 4c 44 41 50 43 6f  AR, INT, PLDAPCo
3ef0: 6e 74 72 6f 6c 41 2a 2c 0a 09 20 20 50 4c 44 41  ntrolA*,..  PLDA
3f00: 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 55 4c 4f 4e  PControlA*, ULON
3f10: 47 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70  G*);..ULONG ldap
3f20: 5f 72 65 6e 61 6d 65 5f 65 78 74 57 28 4c 44 41  _rename_extW(LDA
3f30: 50 2a 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48  P*, PWCHAR, PWCH
3f40: 41 52 2c 20 50 57 43 48 41 52 2c 20 49 4e 54 2c  AR, PWCHAR, INT,
3f50: 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c   PLDAPControlW*,
3f60: 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c  ..  PLDAPControl
3f70: 57 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 09 55 4c  W*, ULONG*);..UL
3f80: 4f 4e 47 20 6c 64 61 70 5f 72 65 6e 61 6d 65 5f  ONG ldap_rename_
3f90: 65 78 74 5f 73 41 28 4c 44 41 50 2a 2c 20 50 43  ext_sA(LDAP*, PC
3fa0: 48 41 52 2c 20 50 43 48 41 52 2c 20 50 43 48 41  HAR, PCHAR, PCHA
3fb0: 52 2c 20 49 4e 54 2c 0a 09 20 20 50 4c 44 41 50  R, INT,..  PLDAP
3fc0: 43 6f 6e 74 72 6f 6c 41 2a 2c 20 50 4c 44 41 50  ControlA*, PLDAP
3fd0: 43 6f 6e 74 72 6f 6c 41 2a 29 3b 0a 09 55 4c 4f  ControlA*);..ULO
3fe0: 4e 47 20 6c 64 61 70 5f 72 65 6e 61 6d 65 5f 65  NG ldap_rename_e
3ff0: 78 74 5f 73 57 28 4c 44 41 50 2a 2c 20 50 57 43  xt_sW(LDAP*, PWC
4000: 48 41 52 2c 20 50 57 43 48 41 52 2c 20 50 57 43  HAR, PWCHAR, PWC
4010: 48 41 52 2c 20 49 4e 54 2c 0a 09 20 20 50 4c 44  HAR, INT,..  PLD
4020: 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 20 50 4c 44  APControlW*, PLD
4030: 41 50 43 6f 6e 74 72 6f 6c 57 2a 29 3b 0a 09 55  APControlW*);..U
4040: 4c 4f 4e 47 20 6c 64 61 70 5f 61 64 64 5f 65 78  LONG ldap_add_ex
4050: 74 41 28 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c  tA(LDAP*, PCHAR,
4060: 20 4c 44 41 50 4d 6f 64 41 2a 5b 5d 2c 20 50 4c   LDAPModA*[], PL
4070: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 0a 09 20  DAPControlA*,.. 
4080: 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c   PLDAPControlA*,
4090: 20 55 4c 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e 47   ULONG*);..ULONG
40a0: 20 6c 64 61 70 5f 61 64 64 5f 65 78 74 57 28 4c   ldap_add_extW(L
40b0: 44 41 50 2a 2c 20 50 57 43 48 41 52 2c 20 4c 44  DAP*, PWCHAR, LD
40c0: 41 50 4d 6f 64 57 2a 5b 5d 2c 20 50 4c 44 41 50  APModW*[], PLDAP
40d0: 43 6f 6e 74 72 6f 6c 57 2a 2c 0a 09 20 20 50 4c  ControlW*,..  PL
40e0: 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 20 55 4c  DAPControlW*, UL
40f0: 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64  ONG*);..ULONG ld
4100: 61 70 5f 61 64 64 5f 65 78 74 5f 73 41 28 4c 44  ap_add_ext_sA(LD
4110: 41 50 2a 2c 20 50 43 48 41 52 2c 20 4c 44 41 50  AP*, PCHAR, LDAP
4120: 4d 6f 64 41 2a 5b 5d 2c 20 50 4c 44 41 50 43 6f  ModA*[], PLDAPCo
4130: 6e 74 72 6f 6c 41 2a 2c 0a 09 20 20 50 4c 44 41  ntrolA*,..  PLDA
4140: 50 43 6f 6e 74 72 6f 6c 41 2a 29 3b 0a 09 55 4c  PControlA*);..UL
4150: 4f 4e 47 20 6c 64 61 70 5f 61 64 64 5f 65 78 74  ONG ldap_add_ext
4160: 5f 73 57 28 4c 44 41 50 2a 2c 20 50 57 43 48 41  _sW(LDAP*, PWCHA
4170: 52 2c 20 4c 44 41 50 4d 6f 64 57 2a 5b 5d 2c 20  R, LDAPModW*[], 
4180: 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2c 0a  PLDAPControlW*,.
4190: 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57  .  PLDAPControlW
41a0: 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  *);..ULONG ldap_
41b0: 61 64 64 41 28 4c 44 41 50 2a 2c 20 50 43 48 41  addA(LDAP*, PCHA
41c0: 52 2c 20 4c 44 41 50 4d 6f 64 41 2a 5b 5d 29 3b  R, LDAPModA*[]);
41d0: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 61 64 64  ..ULONG ldap_add
41e0: 57 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52 2c  W(LDAP*, PWCHAR,
41f0: 20 4c 44 41 50 4d 6f 64 57 2a 5b 5d 29 3b 0a 09   LDAPModW*[]);..
4200: 55 4c 4f 4e 47 20 6c 64 61 70 5f 61 64 64 5f 73  ULONG ldap_add_s
4210: 41 28 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c 20  A(LDAP*, PCHAR, 
4220: 4c 44 41 50 4d 6f 64 41 2a 5b 5d 29 3b 0a 09 55  LDAPModA*[]);..U
4230: 4c 4f 4e 47 20 6c 64 61 70 5f 61 64 64 5f 73 57  LONG ldap_add_sW
4240: 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52 2c 20  (LDAP*, PWCHAR, 
4250: 4c 44 41 50 4d 6f 64 57 2a 5b 5d 29 3b 0a 09 55  LDAPModW*[]);..U
4260: 4c 4f 4e 47 20 6c 64 61 70 5f 64 65 6c 65 74 65  LONG ldap_delete
4270: 5f 65 78 74 41 28 4c 44 41 50 2a 2c 20 50 43 48  _extA(LDAP*, PCH
4280: 41 52 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c  AR, PLDAPControl
4290: 41 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c  A*, PLDAPControl
42a0: 41 2a 2c 0a 09 20 20 55 4c 4f 4e 47 2a 29 3b 0a  A*,..  ULONG*);.
42b0: 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 64 65 6c 65  .ULONG ldap_dele
42c0: 74 65 5f 65 78 74 57 28 4c 44 41 50 2a 2c 20 50  te_extW(LDAP*, P
42d0: 57 43 48 41 52 2c 20 50 4c 44 41 50 43 6f 6e 74  WCHAR, PLDAPCont
42e0: 72 6f 6c 57 2a 2c 20 50 4c 44 41 50 43 6f 6e 74  rolW*, PLDAPCont
42f0: 72 6f 6c 57 2a 2c 0a 09 20 20 55 4c 4f 4e 47 2a  rolW*,..  ULONG*
4300: 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 64  );..ULONG ldap_d
4310: 65 6c 65 74 65 5f 65 78 74 5f 73 41 28 4c 44 41  elete_ext_sA(LDA
4320: 50 2a 2c 20 50 43 48 41 52 2c 20 50 4c 44 41 50  P*, PCHAR, PLDAP
4330: 43 6f 6e 74 72 6f 6c 41 2a 2c 20 50 4c 44 41 50  ControlA*, PLDAP
4340: 43 6f 6e 74 72 6f 6c 41 2a 29 3b 0a 09 55 4c 4f  ControlA*);..ULO
4350: 4e 47 20 6c 64 61 70 5f 64 65 6c 65 74 65 5f 65  NG ldap_delete_e
4360: 78 74 5f 73 57 28 4c 44 41 50 2a 2c 20 50 57 43  xt_sW(LDAP*, PWC
4370: 48 41 52 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f  HAR, PLDAPContro
4380: 6c 57 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f  lW*, PLDAPContro
4390: 6c 57 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61  lW*);..ULONG lda
43a0: 70 5f 64 65 6c 65 74 65 41 28 4c 44 41 50 2a 2c  p_deleteA(LDAP*,
43b0: 20 50 43 48 41 52 29 3b 0a 09 55 4c 4f 4e 47 20   PCHAR);..ULONG 
43c0: 6c 64 61 70 5f 64 65 6c 65 74 65 57 28 4c 44 41  ldap_deleteW(LDA
43d0: 50 2a 2c 20 50 57 43 48 41 52 29 3b 0a 09 55 4c  P*, PWCHAR);..UL
43e0: 4f 4e 47 20 6c 64 61 70 5f 64 65 6c 65 74 65 5f  ONG ldap_delete_
43f0: 73 41 28 4c 44 41 50 2a 2c 20 50 43 48 41 52 29  sA(LDAP*, PCHAR)
4400: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 64 65  ;..ULONG ldap_de
4410: 6c 65 74 65 5f 73 57 28 4c 44 41 50 2a 2c 20 50  lete_sW(LDAP*, P
4420: 57 43 48 41 52 29 3b 0a 09 55 4c 4f 4e 47 20 6c  WCHAR);..ULONG l
4430: 64 61 70 5f 65 78 74 65 6e 64 65 64 5f 6f 70 65  dap_extended_ope
4440: 72 61 74 69 6f 6e 41 28 4c 44 41 50 2a 2c 20 50  rationA(LDAP*, P
4450: 43 48 41 52 2c 20 42 65 72 56 61 6c 75 65 2a 2c  CHAR, BerValue*,
4460: 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c   PLDAPControlA*,
4470: 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c  ..  PLDAPControl
4480: 41 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 09 55 4c  A*, ULONG*);..UL
4490: 4f 4e 47 20 6c 64 61 70 5f 65 78 74 65 6e 64 65  ONG ldap_extende
44a0: 64 5f 6f 70 65 72 61 74 69 6f 6e 57 28 4c 44 41  d_operationW(LDA
44b0: 50 2a 2c 20 50 57 43 48 41 52 2c 20 42 65 72 56  P*, PWCHAR, BerV
44c0: 61 6c 75 65 2a 2c 20 50 4c 44 41 50 43 6f 6e 74  alue*, PLDAPCont
44d0: 72 6f 6c 57 2a 2c 0a 09 20 20 50 4c 44 41 50 43  rolW*,..  PLDAPC
44e0: 6f 6e 74 72 6f 6c 57 2a 2c 20 55 4c 4f 4e 47 2a  ontrolW*, ULONG*
44f0: 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 65  );..ULONG ldap_e
4500: 78 74 65 6e 64 65 64 5f 6f 70 65 72 61 74 69 6f  xtended_operatio
4510: 6e 5f 73 41 28 4c 44 41 50 2a 2c 20 50 43 48 41  n_sA(LDAP*, PCHA
4520: 52 2c 20 42 65 72 56 61 6c 75 65 2a 2c 20 50 4c  R, BerValue*, PL
4530: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 0a 09 20  DAPControlA*,.. 
4540: 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c   PLDAPControlA*,
4550: 20 50 43 48 41 52 2a 2c 20 42 65 72 56 61 6c 75   PCHAR*, BerValu
4560: 65 2a 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61  e**);..ULONG lda
4570: 70 5f 65 78 74 65 6e 64 65 64 5f 6f 70 65 72 61  p_extended_opera
4580: 74 69 6f 6e 5f 73 57 28 4c 44 41 50 2a 2c 20 50  tion_sW(LDAP*, P
4590: 57 43 48 41 52 2c 20 42 65 72 56 61 6c 75 65 2a  WCHAR, BerValue*
45a0: 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 2a  , PLDAPControlW*
45b0: 2c 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f  ,..  PLDAPContro
45c0: 6c 57 2a 2c 20 50 57 43 48 41 52 2a 2c 20 42 65  lW*, PWCHAR*, Be
45d0: 72 56 61 6c 75 65 2a 2a 29 3b 0a 09 55 4c 4f 4e  rValue**);..ULON
45e0: 47 20 6c 64 61 70 5f 63 6c 6f 73 65 5f 65 78 74  G ldap_close_ext
45f0: 65 6e 64 65 64 5f 6f 70 28 4c 44 41 50 2a 2c 20  ended_op(LDAP*, 
4600: 55 4c 4f 4e 47 29 3b 0a 09 55 4c 4f 4e 47 20 6c  ULONG);..ULONG l
4610: 64 61 70 5f 61 62 61 6e 64 6f 6e 28 4c 44 41 50  dap_abandon(LDAP
4620: 2a 2c 20 55 4c 4f 4e 47 29 3b 0a 09 55 4c 4f 4e  *, ULONG);..ULON
4630: 47 20 6c 64 61 70 5f 72 65 73 75 6c 74 28 4c 44  G ldap_result(LD
4640: 41 50 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e  AP*, ULONG, ULON
4650: 47 2c 20 4c 44 41 50 5f 54 49 4d 45 56 41 4c 2a  G, LDAP_TIMEVAL*
4660: 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a 2a 29  , LDAPMessage**)
4670: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 6d 73  ;..ULONG ldap_ms
4680: 67 66 72 65 65 28 4c 44 41 50 4d 65 73 73 61 67  gfree(LDAPMessag
4690: 65 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70  e*);..ULONG ldap
46a0: 5f 70 61 72 73 65 5f 72 65 73 75 6c 74 41 28 4c  _parse_resultA(L
46b0: 44 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67  DAP*, LDAPMessag
46c0: 65 2a 2c 20 55 4c 4f 4e 47 2a 2c 20 50 43 48 41  e*, ULONG*, PCHA
46d0: 52 2a 2c 20 50 43 48 41 52 2a 2c 0a 09 20 20 50  R*, PCHAR*,..  P
46e0: 43 48 41 52 2a 2a 2c 20 50 4c 44 41 50 43 6f 6e  CHAR**, PLDAPCon
46f0: 74 72 6f 6c 41 2a 2a 2c 20 42 4f 4f 4c 45 41 4e  trolA**, BOOLEAN
4700: 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 70  );..ULONG ldap_p
4710: 61 72 73 65 5f 72 65 73 75 6c 74 57 28 4c 44 41  arse_resultW(LDA
4720: 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a  P*, LDAPMessage*
4730: 2c 20 55 4c 4f 4e 47 2a 2c 20 50 57 43 48 41 52  , ULONG*, PWCHAR
4740: 2a 2c 20 50 57 43 48 41 52 2a 2c 0a 09 20 20 50  *, PWCHAR*,..  P
4750: 57 43 48 41 52 2a 2a 2c 20 50 4c 44 41 50 43 6f  WCHAR**, PLDAPCo
4760: 6e 74 72 6f 6c 57 2a 2a 2c 20 42 4f 4f 4c 45 41  ntrolW**, BOOLEA
4770: 4e 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  N);..ULONG ldap_
4780: 70 61 72 73 65 5f 65 78 74 65 6e 64 65 64 5f 72  parse_extended_r
4790: 65 73 75 6c 74 41 28 4c 44 41 50 2c 20 4c 44 41  esultA(LDAP, LDA
47a0: 50 4d 65 73 73 61 67 65 2a 2c 20 50 43 48 41 52  PMessage*, PCHAR
47b0: 2a 2c 20 42 65 72 56 61 6c 75 65 2a 2a 2c 0a 09  *, BerValue**,..
47c0: 20 20 42 4f 4f 4c 45 41 4e 29 3b 0a 09 55 4c 4f    BOOLEAN);..ULO
47d0: 4e 47 20 6c 64 61 70 5f 70 61 72 73 65 5f 65 78  NG ldap_parse_ex
47e0: 74 65 6e 64 65 64 5f 72 65 73 75 6c 74 57 28 4c  tended_resultW(L
47f0: 44 41 50 2c 20 4c 44 41 50 4d 65 73 73 61 67 65  DAP, LDAPMessage
4800: 2a 2c 20 50 57 43 48 41 52 2a 2c 20 42 65 72 56  *, PWCHAR*, BerV
4810: 61 6c 75 65 2a 2a 2c 0a 09 20 20 42 4f 4f 4c 45  alue**,..  BOOLE
4820: 41 4e 29 3b 0a 09 50 43 48 41 52 20 6c 64 61 70  AN);..PCHAR ldap
4830: 5f 65 72 72 32 73 74 72 69 6e 67 41 28 55 4c 4f  _err2stringA(ULO
4840: 4e 47 29 3b 0a 09 50 57 43 48 41 52 20 6c 64 61  NG);..PWCHAR lda
4850: 70 5f 65 72 72 32 73 74 72 69 6e 67 57 28 55 4c  p_err2stringW(UL
4860: 4f 4e 47 29 3b 0a 09 55 4c 4f 4e 47 20 4c 64 61  ONG);..ULONG Lda
4870: 70 47 65 74 4c 61 73 74 45 72 72 6f 72 28 29 3b  pGetLastError();
4880: 0a 09 55 4c 4f 4e 47 20 4c 64 61 70 4d 61 70 45  ..ULONG LdapMapE
4890: 72 72 6f 72 54 6f 57 69 6e 33 32 28 55 4c 4f 4e  rrorToWin32(ULON
48a0: 47 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  G);..ULONG ldap_
48b0: 72 65 73 75 6c 74 32 65 72 72 6f 72 28 4c 44 41  result2error(LDA
48c0: 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a  P*, LDAPMessage*
48d0: 2c 20 55 4c 4f 4e 47 29 3b 0a 09 50 4c 44 41 50  , ULONG);..PLDAP
48e0: 4d 65 73 73 61 67 65 20 6c 64 61 70 5f 66 69 72  Message ldap_fir
48f0: 73 74 5f 65 6e 74 72 79 28 4c 44 41 50 2a 2c 20  st_entry(LDAP*, 
4900: 4c 44 41 50 4d 65 73 73 61 67 65 2a 29 3b 0a 09  LDAPMessage*);..
4910: 50 4c 44 41 50 4d 65 73 73 61 67 65 20 6c 64 61  PLDAPMessage lda
4920: 70 5f 6e 65 78 74 5f 65 6e 74 72 79 28 4c 44 41  p_next_entry(LDA
4930: 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a  P*, LDAPMessage*
4940: 29 3b 0a 09 50 4c 44 41 50 4d 65 73 73 61 67 65  );..PLDAPMessage
4950: 20 6c 64 61 70 5f 66 69 72 73 74 5f 72 65 66 65   ldap_first_refe
4960: 72 65 6e 63 65 28 4c 44 41 50 2a 2c 20 4c 44 41  rence(LDAP*, LDA
4970: 50 4d 65 73 73 61 67 65 2a 29 3b 0a 09 50 4c 44  PMessage*);..PLD
4980: 41 50 4d 65 73 73 61 67 65 20 6c 64 61 70 5f 6e  APMessage ldap_n
4990: 65 78 74 5f 72 65 66 65 72 65 6e 63 65 28 4c 44  ext_reference(LD
49a0: 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67 65  AP*, LDAPMessage
49b0: 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  *);..ULONG ldap_
49c0: 63 6f 75 6e 74 5f 65 6e 74 72 69 65 73 28 4c 44  count_entries(LD
49d0: 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67 65  AP*, LDAPMessage
49e0: 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  *);..ULONG ldap_
49f0: 63 6f 75 6e 74 5f 72 65 66 65 72 65 6e 63 65 73  count_references
4a00: 28 4c 44 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73  (LDAP*, LDAPMess
4a10: 61 67 65 2a 29 3b 0a 09 50 43 48 41 52 20 6c 64  age*);..PCHAR ld
4a20: 61 70 5f 66 69 72 73 74 5f 61 74 74 72 69 62 75  ap_first_attribu
4a30: 74 65 41 28 4c 44 41 50 2a 2c 20 4c 44 41 50 4d  teA(LDAP*, LDAPM
4a40: 65 73 73 61 67 65 2a 2c 20 42 65 72 45 6c 65 6d  essage*, BerElem
4a50: 65 6e 74 2a 2a 29 3b 0a 09 50 57 43 48 41 52 20  ent**);..PWCHAR 
4a60: 6c 64 61 70 5f 66 69 72 73 74 5f 61 74 74 72 69  ldap_first_attri
4a70: 62 75 74 65 57 28 4c 44 41 50 2a 2c 20 4c 44 41  buteW(LDAP*, LDA
4a80: 50 4d 65 73 73 61 67 65 2a 2c 20 42 65 72 45 6c  PMessage*, BerEl
4a90: 65 6d 65 6e 74 2a 2a 29 3b 0a 09 50 43 48 41 52  ement**);..PCHAR
4aa0: 20 6c 64 61 70 5f 6e 65 78 74 5f 61 74 74 72 69   ldap_next_attri
4ab0: 62 75 74 65 41 28 4c 44 41 50 2a 2c 20 4c 44 41  buteA(LDAP*, LDA
4ac0: 50 4d 65 73 73 61 67 65 2a 2c 20 42 65 72 45 6c  PMessage*, BerEl
4ad0: 65 6d 65 6e 74 2a 29 3b 0a 09 50 57 43 48 41 52  ement*);..PWCHAR
4ae0: 20 6c 64 61 70 5f 6e 65 78 74 5f 61 74 74 72 69   ldap_next_attri
4af0: 62 75 74 65 57 28 4c 44 41 50 2a 2c 20 4c 44 41  buteW(LDAP*, LDA
4b00: 50 4d 65 73 73 61 67 65 2a 2c 20 42 65 72 45 6c  PMessage*, BerEl
4b10: 65 6d 65 6e 74 2a 29 3b 0a 09 56 4f 49 44 20 6c  ement*);..VOID l
4b20: 64 61 70 5f 6d 65 6d 66 72 65 65 41 28 50 43 48  dap_memfreeA(PCH
4b30: 41 52 29 3b 0a 09 56 4f 49 44 20 6c 64 61 70 5f  AR);..VOID ldap_
4b40: 6d 65 6d 66 72 65 65 57 28 50 57 43 48 41 52 29  memfreeW(PWCHAR)
4b50: 3b 0a 09 50 43 48 41 52 2a 20 6c 64 61 70 5f 67  ;..PCHAR* ldap_g
4b60: 65 74 5f 76 61 6c 75 65 73 41 28 4c 44 41 50 2a  et_valuesA(LDAP*
4b70: 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a 2c 20  , LDAPMessage*, 
4b80: 50 43 48 41 52 29 3b 0a 09 50 57 43 48 41 52 2a  PCHAR);..PWCHAR*
4b90: 20 6c 64 61 70 5f 67 65 74 5f 76 61 6c 75 65 73   ldap_get_values
4ba0: 57 28 4c 44 41 50 2a 2c 20 4c 44 41 50 4d 65 73  W(LDAP*, LDAPMes
4bb0: 73 61 67 65 2a 2c 20 50 57 43 48 41 52 29 3b 0a  sage*, PWCHAR);.
4bc0: 09 42 65 72 56 61 6c 75 65 2a 2a 20 6c 64 61 70  .BerValue** ldap
4bd0: 5f 67 65 74 5f 76 61 6c 75 65 73 5f 6c 65 6e 41  _get_values_lenA
4be0: 28 4c 44 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73  (LDAP*, LDAPMess
4bf0: 61 67 65 2a 2c 20 50 43 48 41 52 29 3b 0a 09 42  age*, PCHAR);..B
4c00: 65 72 56 61 6c 75 65 2a 2a 20 6c 64 61 70 5f 67  erValue** ldap_g
4c10: 65 74 5f 76 61 6c 75 65 73 5f 6c 65 6e 57 28 4c  et_values_lenW(L
4c20: 44 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67  DAP*, LDAPMessag
4c30: 65 2a 2c 20 50 57 43 48 41 52 29 3b 0a 09 55 4c  e*, PWCHAR);..UL
4c40: 4f 4e 47 20 6c 64 61 70 5f 63 6f 75 6e 74 5f 76  ONG ldap_count_v
4c50: 61 6c 75 65 73 41 28 50 43 48 41 52 2a 29 3b 0a  aluesA(PCHAR*);.
4c60: 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 63 6f 75 6e  .ULONG ldap_coun
4c70: 74 5f 76 61 6c 75 65 73 57 28 50 57 43 48 41 52  t_valuesW(PWCHAR
4c80: 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  *);..ULONG ldap_
4c90: 63 6f 75 6e 74 5f 76 61 6c 75 65 73 5f 6c 65 6e  count_values_len
4ca0: 28 42 65 72 56 61 6c 75 65 2a 2a 29 3b 0a 09 55  (BerValue**);..U
4cb0: 4c 4f 4e 47 20 6c 64 61 70 5f 76 61 6c 75 65 5f  LONG ldap_value_
4cc0: 66 72 65 65 41 28 50 43 48 41 52 2a 29 3b 0a 09  freeA(PCHAR*);..
4cd0: 55 4c 4f 4e 47 20 6c 64 61 70 5f 76 61 6c 75 65  ULONG ldap_value
4ce0: 5f 66 72 65 65 57 28 50 57 43 48 41 52 2a 29 3b  _freeW(PWCHAR*);
4cf0: 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 76 61 6c  ..ULONG ldap_val
4d00: 75 65 5f 66 72 65 65 5f 6c 65 6e 28 42 65 72 56  ue_free_len(BerV
4d10: 61 6c 75 65 2a 2a 29 3b 0a 09 50 43 48 41 52 20  alue**);..PCHAR 
4d20: 6c 64 61 70 5f 67 65 74 5f 64 6e 41 28 4c 44 41  ldap_get_dnA(LDA
4d30: 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a  P*, LDAPMessage*
4d40: 29 3b 0a 09 50 57 43 48 41 52 20 6c 64 61 70 5f  );..PWCHAR ldap_
4d50: 67 65 74 5f 64 6e 57 28 4c 44 41 50 2a 2c 20 4c  get_dnW(LDAP*, L
4d60: 44 41 50 4d 65 73 73 61 67 65 2a 29 3b 0a 09 50  DAPMessage*);..P
4d70: 43 48 41 52 20 6c 64 61 70 5f 65 78 70 6c 6f 64  CHAR ldap_explod
4d80: 65 5f 64 6e 41 28 50 43 48 41 52 2c 20 55 4c 4f  e_dnA(PCHAR, ULO
4d90: 4e 47 29 3b 0a 09 50 57 43 48 41 52 20 6c 64 61  NG);..PWCHAR lda
4da0: 70 5f 65 78 70 6c 6f 64 65 5f 64 6e 57 28 50 57  p_explode_dnW(PW
4db0: 43 48 41 52 2c 20 55 4c 4f 4e 47 29 3b 0a 09 50  CHAR, ULONG);..P
4dc0: 43 48 41 52 20 6c 64 61 70 5f 64 6e 32 75 66 6e  CHAR ldap_dn2ufn
4dd0: 41 28 50 43 48 41 52 29 3b 0a 09 50 57 43 48 41  A(PCHAR);..PWCHA
4de0: 52 20 6c 64 61 70 5f 64 6e 32 75 66 6e 57 28 50  R ldap_dn2ufnW(P
4df0: 57 43 48 41 52 29 3b 0a 09 55 4c 4f 4e 47 20 6c  WCHAR);..ULONG l
4e00: 64 61 70 5f 75 66 6e 32 64 6e 41 28 50 43 48 41  dap_ufn2dnA(PCHA
4e10: 52 2c 20 50 43 48 41 52 2a 29 3b 0a 09 55 4c 4f  R, PCHAR*);..ULO
4e20: 4e 47 20 6c 64 61 70 5f 75 66 6e 32 64 6e 57 28  NG ldap_ufn2dnW(
4e30: 50 57 43 48 41 52 2c 20 50 57 43 48 41 52 2a 29  PWCHAR, PWCHAR*)
4e40: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 70 61  ;..ULONG ldap_pa
4e50: 72 73 65 5f 72 65 66 65 72 65 6e 63 65 41 28 4c  rse_referenceA(L
4e60: 44 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61 67  DAP*, LDAPMessag
4e70: 65 2a 2c 20 50 43 48 41 52 2a 2a 29 3b 0a 09 55  e*, PCHAR**);..U
4e80: 4c 4f 4e 47 20 6c 64 61 70 5f 70 61 72 73 65 5f  LONG ldap_parse_
4e90: 72 65 66 65 72 65 6e 63 65 57 28 4c 44 41 50 2a  referenceW(LDAP*
4ea0: 2c 20 4c 44 41 50 4d 65 73 73 61 67 65 2a 2c 20  , LDAPMessage*, 
4eb0: 50 57 43 48 41 52 2a 2a 29 3b 0a 09 55 4c 4f 4e  PWCHAR**);..ULON
4ec0: 47 20 6c 64 61 70 5f 63 68 65 63 6b 5f 66 69 6c  G ldap_check_fil
4ed0: 74 65 72 41 28 4c 44 41 50 2a 2c 20 50 43 48 41  terA(LDAP*, PCHA
4ee0: 52 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f  R);..ULONG ldap_
4ef0: 63 68 65 63 6b 5f 66 69 6c 74 65 72 57 28 4c 44  check_filterW(LD
4f00: 41 50 2a 2c 20 50 57 43 48 41 52 29 3b 0a 09 55  AP*, PWCHAR);..U
4f10: 4c 4f 4e 47 20 6c 64 61 70 5f 63 72 65 61 74 65  LONG ldap_create
4f20: 5f 70 61 67 65 5f 63 6f 6e 74 72 6f 6c 41 28 50  _page_controlA(P
4f30: 4c 44 41 50 2c 20 55 4c 4f 4e 47 2c 20 42 65 72  LDAP, ULONG, Ber
4f40: 56 61 6c 75 65 2a 2c 20 55 43 48 41 52 2c 0a 09  Value*, UCHAR,..
4f50: 20 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a    PLDAPControlA*
4f60: 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 63  );..ULONG ldap_c
4f70: 72 65 61 74 65 5f 70 61 67 65 5f 63 6f 6e 74 72  reate_page_contr
4f80: 6f 6c 57 28 50 4c 44 41 50 2c 20 55 4c 4f 4e 47  olW(PLDAP, ULONG
4f90: 2c 20 42 65 72 56 61 6c 75 65 2a 2c 20 55 43 48  , BerValue*, UCH
4fa0: 41 52 2c 0a 09 20 20 50 4c 44 41 50 43 6f 6e 74  AR,..  PLDAPCont
4fb0: 72 6f 6c 57 2a 29 3b 0a 09 55 4c 4f 4e 47 20 6c  rolW*);..ULONG l
4fc0: 64 61 70 5f 63 72 65 61 74 65 5f 73 6f 72 74 5f  dap_create_sort_
4fd0: 63 6f 6e 74 72 6f 6c 41 28 50 4c 44 41 50 2c 20  controlA(PLDAP, 
4fe0: 50 4c 44 41 50 53 6f 72 74 4b 65 79 41 2a 2c 20  PLDAPSortKeyA*, 
4ff0: 55 43 48 41 52 2c 0a 09 20 20 50 4c 44 41 50 43  UCHAR,..  PLDAPC
5000: 6f 6e 74 72 6f 6c 41 2a 29 3b 0a 09 55 4c 4f 4e  ontrolA*);..ULON
5010: 47 20 6c 64 61 70 5f 63 72 65 61 74 65 5f 73 6f  G ldap_create_so
5020: 72 74 5f 63 6f 6e 74 72 6f 6c 57 28 50 4c 44 41  rt_controlW(PLDA
5030: 50 2c 20 50 4c 44 41 50 53 6f 72 74 4b 65 79 57  P, PLDAPSortKeyW
5040: 2a 2c 20 55 43 48 41 52 2c 0a 09 50 4c 44 41 50  *, UCHAR,..PLDAP
5050: 43 6f 6e 74 72 6f 6c 57 2a 29 3b 0a 09 49 4e 54  ControlW*);..INT
5060: 20 6c 64 61 70 5f 63 72 65 61 74 65 5f 76 6c 76   ldap_create_vlv
5070: 5f 63 6f 6e 74 72 6f 6c 41 28 4c 44 41 50 2a 2c  _controlA(LDAP*,
5080: 20 4c 44 41 50 56 4c 56 49 6e 66 6f 2a 2c 20 55   LDAPVLVInfo*, U
5090: 43 48 41 52 2c 20 4c 44 41 50 43 6f 6e 74 72 6f  CHAR, LDAPContro
50a0: 6c 41 2a 2a 29 3b 0a 09 49 4e 54 20 6c 64 61 70  lA**);..INT ldap
50b0: 5f 63 72 65 61 74 65 5f 76 6c 76 5f 63 6f 6e 74  _create_vlv_cont
50c0: 72 6f 6c 57 28 4c 44 41 50 2a 2c 20 4c 44 41 50  rolW(LDAP*, LDAP
50d0: 56 4c 56 49 6e 66 6f 2a 2c 20 55 43 48 41 52 2c  VLVInfo*, UCHAR,
50e0: 20 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 2a 2a 29   LDAPControlW**)
50f0: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 65 6e  ;..ULONG ldap_en
5100: 63 6f 64 65 5f 73 6f 72 74 5f 63 6f 6e 74 72 6f  code_sort_contro
5110: 6c 41 28 50 4c 44 41 50 2c 20 50 4c 44 41 50 53  lA(PLDAP, PLDAPS
5120: 6f 72 74 4b 65 79 41 2a 2c 20 50 4c 44 41 50 43  ortKeyA*, PLDAPC
5130: 6f 6e 74 72 6f 6c 41 2c 0a 09 20 20 42 4f 4f 4c  ontrolA,..  BOOL
5140: 45 41 4e 29 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61  EAN);..ULONG lda
5150: 70 5f 65 6e 63 6f 64 65 5f 73 6f 72 74 5f 63 6f  p_encode_sort_co
5160: 6e 74 72 6f 6c 57 28 50 4c 44 41 50 2c 20 50 4c  ntrolW(PLDAP, PL
5170: 44 41 50 53 6f 72 74 4b 65 79 57 2a 2c 20 50 4c  DAPSortKeyW*, PL
5180: 44 41 50 43 6f 6e 74 72 6f 6c 57 2c 0a 09 20 20  DAPControlW,..  
5190: 42 4f 4f 4c 45 41 4e 29 3b 0a 09 55 4c 4f 4e 47  BOOLEAN);..ULONG
51a0: 20 6c 64 61 70 5f 65 73 63 61 70 65 5f 66 69 6c   ldap_escape_fil
51b0: 74 65 72 5f 65 6c 65 6d 65 6e 74 41 28 50 43 48  ter_elementA(PCH
51c0: 41 52 2c 20 55 4c 4f 4e 47 2c 20 50 43 48 41 52  AR, ULONG, PCHAR
51d0: 2c 20 55 4c 4f 4e 47 29 3b 0a 09 55 4c 4f 4e 47  , ULONG);..ULONG
51e0: 20 6c 64 61 70 5f 65 73 63 61 70 65 5f 66 69 6c   ldap_escape_fil
51f0: 74 65 72 5f 65 6c 65 6d 65 6e 74 57 28 50 57 43  ter_elementW(PWC
5200: 48 41 52 2c 20 55 4c 4f 4e 47 2c 20 50 57 43 48  HAR, ULONG, PWCH
5210: 41 52 2c 20 55 4c 4f 4e 47 29 3b 0a 09 55 4c 4f  AR, ULONG);..ULO
5220: 4e 47 20 6c 64 61 70 5f 67 65 74 5f 6e 65 78 74  NG ldap_get_next
5230: 5f 70 61 67 65 28 50 4c 44 41 50 2c 20 50 4c 44  _page(PLDAP, PLD
5240: 41 50 53 65 61 72 63 68 2c 20 55 4c 4f 4e 47 2c  APSearch, ULONG,
5250: 20 55 4c 4f 4e 47 2a 29 3b 0a 09 55 4c 4f 4e 47   ULONG*);..ULONG
5260: 20 6c 64 61 70 5f 67 65 74 5f 6e 65 78 74 5f 70   ldap_get_next_p
5270: 61 67 65 5f 73 28 50 4c 44 41 50 2c 20 50 4c 44  age_s(PLDAP, PLD
5280: 41 50 53 65 61 72 63 68 2c 20 4c 44 41 50 5f 54  APSearch, LDAP_T
5290: 49 4d 45 56 41 4c 2a 2c 20 55 4c 4f 4e 47 2c 0a  IMEVAL*, ULONG,.
52a0: 09 20 20 55 4c 4f 4e 47 2a 2c 20 4c 44 41 50 4d  .  ULONG*, LDAPM
52b0: 65 73 73 61 67 65 2a 2a 29 3b 0a 09 55 4c 4f 4e  essage**);..ULON
52c0: 47 20 6c 64 61 70 5f 67 65 74 5f 70 61 67 65 64  G ldap_get_paged
52d0: 5f 63 6f 75 6e 74 28 50 4c 44 41 50 2c 20 50 4c  _count(PLDAP, PL
52e0: 44 41 50 53 65 61 72 63 68 2c 20 55 4c 4f 4e 47  DAPSearch, ULONG
52f0: 2a 2c 20 50 4c 44 41 50 4d 65 73 73 61 67 65 29  *, PLDAPMessage)
5300: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 70 61  ;..ULONG ldap_pa
5310: 72 73 65 5f 70 61 67 65 5f 63 6f 6e 74 72 6f 6c  rse_page_control
5320: 41 28 50 4c 44 41 50 2c 20 50 4c 44 41 50 43 6f  A(PLDAP, PLDAPCo
5330: 6e 74 72 6f 6c 41 2a 2c 20 55 4c 4f 4e 47 2a 2c  ntrolA*, ULONG*,
5340: 20 42 65 72 56 61 6c 75 65 2a 2a 29 3b 0a 09 55   BerValue**);..U
5350: 4c 4f 4e 47 20 6c 64 61 70 5f 70 61 72 73 65 5f  LONG ldap_parse_
5360: 70 61 67 65 5f 63 6f 6e 74 72 6f 6c 57 28 50 4c  page_controlW(PL
5370: 44 41 50 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f  DAP, PLDAPContro
5380: 6c 57 2a 2c 20 55 4c 4f 4e 47 2a 2c 20 42 65 72  lW*, ULONG*, Ber
5390: 56 61 6c 75 65 2a 2a 29 3b 0a 09 55 4c 4f 4e 47  Value**);..ULONG
53a0: 20 6c 64 61 70 5f 70 61 72 73 65 5f 73 6f 72 74   ldap_parse_sort
53b0: 5f 63 6f 6e 74 72 6f 6c 41 28 50 4c 44 41 50 2c  _controlA(PLDAP,
53c0: 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c   PLDAPControlA*,
53d0: 20 55 4c 4f 4e 47 2a 2c 20 50 43 48 41 52 2a 29   ULONG*, PCHAR*)
53e0: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 70 61  ;..ULONG ldap_pa
53f0: 72 73 65 5f 73 6f 72 74 5f 63 6f 6e 74 72 6f 6c  rse_sort_control
5400: 57 28 50 4c 44 41 50 2c 20 50 4c 44 41 50 43 6f  W(PLDAP, PLDAPCo
5410: 6e 74 72 6f 6c 57 2a 2c 20 55 4c 4f 4e 47 2a 2c  ntrolW*, ULONG*,
5420: 20 50 57 43 48 41 52 2a 29 3b 0a 09 49 4e 54 20   PWCHAR*);..INT 
5430: 6c 64 61 70 5f 70 61 72 73 65 5f 76 6c 76 5f 63  ldap_parse_vlv_c
5440: 6f 6e 74 72 6f 6c 41 28 4c 44 41 50 2a 2c 20 4c  ontrolA(LDAP*, L
5450: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2a 2c 20 75  DAPControlA**, u
5460: 69 6e 74 2a 2c 20 75 69 6e 74 2a 2c 0a 09 20 20  int*, uint*,..  
5470: 42 65 72 56 61 6c 75 65 2a 2a 2c 20 69 6e 74 2a  BerValue**, int*
5480: 29 3b 0a 09 49 4e 54 20 6c 64 61 70 5f 70 61 72  );..INT ldap_par
5490: 73 65 5f 76 6c 76 5f 63 6f 6e 74 72 6f 6c 57 28  se_vlv_controlW(
54a0: 4c 44 41 50 2a 2c 20 4c 44 41 50 43 6f 6e 74 72  LDAP*, LDAPContr
54b0: 6f 6c 57 2a 2a 2c 20 75 69 6e 74 2a 2c 20 75 69  olW**, uint*, ui
54c0: 6e 74 2a 2c 0a 09 20 20 42 65 72 56 61 6c 75 65  nt*,..  BerValue
54d0: 2a 2a 2c 20 69 6e 74 2a 29 3b 0a 09 50 4c 44 41  **, int*);..PLDA
54e0: 50 53 65 61 72 63 68 20 6c 64 61 70 5f 73 65 61  PSearch ldap_sea
54f0: 72 63 68 5f 69 6e 69 74 5f 70 61 67 65 41 28 50  rch_init_pageA(P
5500: 4c 44 41 50 2c 20 50 43 48 41 52 2c 20 55 4c 4f  LDAP, PCHAR, ULO
5510: 4e 47 2c 20 50 43 48 41 52 2c 20 50 43 48 41 52  NG, PCHAR, PCHAR
5520: 5b 5d 2c 0a 09 20 20 55 4c 4f 4e 47 2c 20 50 4c  [],..  ULONG, PL
5530: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 50 4c  DAPControlA*, PL
5540: 44 41 50 43 6f 6e 74 72 6f 6c 41 2a 2c 20 55 4c  DAPControlA*, UL
5550: 4f 4e 47 2c 20 55 4c 4f 4e 47 2c 20 50 4c 44 41  ONG, ULONG, PLDA
5560: 50 53 6f 72 74 4b 65 79 41 2a 29 3b 0a 09 50 4c  PSortKeyA*);..PL
5570: 44 41 50 53 65 61 72 63 68 20 6c 64 61 70 5f 73  DAPSearch ldap_s
5580: 65 61 72 63 68 5f 69 6e 69 74 5f 70 61 67 65 57  earch_init_pageW
5590: 28 50 4c 44 41 50 2c 20 50 57 43 48 41 52 2c 20  (PLDAP, PWCHAR, 
55a0: 55 4c 4f 4e 47 2c 20 50 57 43 48 41 52 2c 20 50  ULONG, PWCHAR, P
55b0: 57 43 48 41 52 5b 5d 2c 0a 09 20 20 55 4c 4f 4e  WCHAR[],..  ULON
55c0: 47 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57  G, PLDAPControlW
55d0: 2a 2c 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57  *, PLDAPControlW
55e0: 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2c  *, ULONG, ULONG,
55f0: 20 50 4c 44 41 50 53 6f 72 74 4b 65 79 57 2a 29   PLDAPSortKeyW*)
5600: 3b 0a 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 73 65  ;..ULONG ldap_se
5610: 61 72 63 68 5f 61 62 61 6e 64 6f 6e 5f 70 61 67  arch_abandon_pag
5620: 65 28 50 4c 44 41 50 2c 20 50 4c 44 41 50 53 65  e(PLDAP, PLDAPSe
5630: 61 72 63 68 29 3b 0a 09 4c 44 41 50 20 6c 64 61  arch);..LDAP lda
5640: 70 5f 63 6f 6e 6e 5f 66 72 6f 6d 5f 6d 73 67 28  p_conn_from_msg(
5650: 4c 44 41 50 2a 2c 20 4c 44 41 50 4d 65 73 73 61  LDAP*, LDAPMessa
5660: 67 65 2a 29 3b 0a 09 49 4e 54 20 4c 64 61 70 55  ge*);..INT LdapU
5670: 6e 69 63 6f 64 65 54 6f 55 54 46 38 28 4c 50 43  nicodeToUTF8(LPC
5680: 57 53 54 52 2c 20 69 6e 74 2c 20 4c 50 53 54 52  WSTR, int, LPSTR
5690: 2c 20 69 6e 74 29 3b 0a 09 49 4e 54 20 4c 64 61  , int);..INT Lda
56a0: 70 55 54 46 38 54 6f 55 6e 69 63 6f 64 65 28 4c  pUTF8ToUnicode(L
56b0: 50 43 53 54 52 2c 20 69 6e 74 2c 20 4c 50 57 53  PCSTR, int, LPWS
56c0: 54 52 2c 20 69 6e 74 29 3b 0a 09 64 65 70 72 65  TR, int);..depre
56d0: 63 61 74 65 64 20 7b 0a 09 09 55 4c 4f 4e 47 20  cated {...ULONG 
56e0: 6c 64 61 70 5f 62 69 6e 64 41 28 4c 44 41 50 2a  ldap_bindA(LDAP*
56f0: 2c 20 50 43 48 41 52 2c 20 50 43 48 41 52 2c 20  , PCHAR, PCHAR, 
5700: 55 4c 4f 4e 47 29 3b 0a 09 09 55 4c 4f 4e 47 20  ULONG);...ULONG 
5710: 6c 64 61 70 5f 62 69 6e 64 57 28 4c 44 41 50 2a  ldap_bindW(LDAP*
5720: 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48 41 52  , PWCHAR, PWCHAR
5730: 2c 20 55 4c 4f 4e 47 29 3b 0a 09 09 55 4c 4f 4e  , ULONG);...ULON
5740: 47 20 6c 64 61 70 5f 62 69 6e 64 5f 73 41 28 4c  G ldap_bind_sA(L
5750: 44 41 50 2a 2c 20 50 43 48 41 52 2c 20 50 43 48  DAP*, PCHAR, PCH
5760: 41 52 2c 20 55 4c 4f 4e 47 29 3b 0a 09 09 55 4c  AR, ULONG);...UL
5770: 4f 4e 47 20 6c 64 61 70 5f 62 69 6e 64 5f 73 57  ONG ldap_bind_sW
5780: 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52 2c 20  (LDAP*, PWCHAR, 
5790: 50 57 43 48 41 52 2c 20 55 4c 4f 4e 47 29 3b 0a  PWCHAR, ULONG);.
57a0: 09 09 55 4c 4f 4e 47 20 6c 64 61 70 5f 6d 6f 64  ..ULONG ldap_mod
57b0: 72 64 6e 41 28 4c 44 41 50 2a 2c 20 50 43 48 41  rdnA(LDAP*, PCHA
57c0: 52 2c 20 50 43 48 41 52 29 3b 0a 09 09 55 4c 4f  R, PCHAR);...ULO
57d0: 4e 47 20 6c 64 61 70 5f 6d 6f 64 72 64 6e 57 28  NG ldap_modrdnW(
57e0: 4c 44 41 50 2a 2c 20 50 57 43 48 41 52 2c 20 50  LDAP*, PWCHAR, P
57f0: 57 43 48 41 52 29 3b 0a 09 09 55 4c 4f 4e 47 20  WCHAR);...ULONG 
5800: 6c 64 61 70 5f 6d 6f 64 72 64 6e 5f 73 41 28 4c  ldap_modrdn_sA(L
5810: 44 41 50 2a 2c 20 50 43 48 41 52 2c 20 50 43 48  DAP*, PCHAR, PCH
5820: 41 52 29 3b 0a 09 09 55 4c 4f 4e 47 20 6c 64 61  AR);...ULONG lda
5830: 70 5f 6d 6f 64 72 64 6e 5f 73 57 28 4c 44 41 50  p_modrdn_sW(LDAP
5840: 2a 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48 41  *, PWCHAR, PWCHA
5850: 52 29 3b 0a 09 09 55 4c 4f 4e 47 20 6c 64 61 70  R);...ULONG ldap
5860: 5f 6d 6f 64 72 64 6e 32 41 28 4c 44 41 50 2a 2c  _modrdn2A(LDAP*,
5870: 20 50 43 48 41 52 2c 20 50 43 48 41 52 2c 20 49   PCHAR, PCHAR, I
5880: 4e 54 29 3b 0a 09 09 55 4c 4f 4e 47 20 6c 64 61  NT);...ULONG lda
5890: 70 5f 6d 6f 64 72 64 6e 32 57 28 4c 44 41 50 2a  p_modrdn2W(LDAP*
58a0: 2c 20 50 57 43 48 41 52 2c 20 50 57 43 48 41 52  , PWCHAR, PWCHAR
58b0: 2c 20 49 4e 54 29 3b 0a 09 09 55 4c 4f 4e 47 20  , INT);...ULONG 
58c0: 6c 64 61 70 5f 6d 6f 64 72 64 6e 32 5f 73 41 28  ldap_modrdn2_sA(
58d0: 4c 44 41 50 2a 2c 20 50 43 48 41 52 2c 20 50 43  LDAP*, PCHAR, PC
58e0: 48 41 52 2c 20 49 4e 54 29 3b 0a 09 09 55 4c 4f  HAR, INT);...ULO
58f0: 4e 47 20 6c 64 61 70 5f 6d 6f 64 72 64 6e 32 5f  NG ldap_modrdn2_
5900: 73 57 28 4c 44 41 50 2a 2c 20 50 57 43 48 41 52  sW(LDAP*, PWCHAR
5910: 2c 20 50 57 43 48 41 52 2c 20 49 4e 54 29 3b 0a  , PWCHAR, INT);.
5920: 09 7d 0a 7d 0a 0a 76 65 72 73 69 6f 6e 20 28 55  .}.}..version (U
5930: 6e 69 63 6f 64 65 29 20 7b 0a 09 61 6c 69 61 73  nicode) {..alias
5940: 20 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 20 4c 44   LDAPControlW LD
5950: 41 50 43 6f 6e 74 72 6f 6c 3b 0a 09 61 6c 69 61  APControl;..alia
5960: 73 20 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 57 20  s PLDAPControlW 
5970: 50 4c 44 41 50 43 6f 6e 74 72 6f 6c 3b 0a 09 61  PLDAPControl;..a
5980: 6c 69 61 73 20 4c 44 41 50 4d 6f 64 57 20 4c 44  lias LDAPModW LD
5990: 41 50 4d 6f 64 3b 0a 09 61 6c 69 61 73 20 4c 44  APMod;..alias LD
59a0: 41 50 4d 6f 64 57 20 50 4c 44 41 50 4d 6f 64 3b  APModW PLDAPMod;
59b0: 0a 09 61 6c 69 61 73 20 4c 44 41 50 53 6f 72 74  ..alias LDAPSort
59c0: 4b 65 79 57 20 4c 44 41 50 53 6f 72 74 4b 65 79  KeyW LDAPSortKey
59d0: 3b 0a 09 61 6c 69 61 73 20 50 4c 44 41 50 53 6f  ;..alias PLDAPSo
59e0: 72 74 4b 65 79 57 20 50 4c 44 41 50 53 6f 72 74  rtKeyW PLDAPSort
59f0: 4b 65 79 3b 0a 09 61 6c 69 61 73 20 4c 44 41 50  Key;..alias LDAP
5a00: 41 50 49 49 6e 66 6f 57 20 4c 44 41 50 41 50 49  APIInfoW LDAPAPI
5a10: 49 6e 66 6f 3b 0a 09 61 6c 69 61 73 20 50 4c 44  Info;..alias PLD
5a20: 41 50 41 50 49 49 6e 66 6f 57 20 50 4c 44 41 50  APAPIInfoW PLDAP
5a30: 41 50 49 49 6e 66 6f 3b 0a 09 61 6c 69 61 73 20  APIInfo;..alias 
5a40: 4c 44 41 50 41 50 49 46 65 61 74 75 72 65 49 6e  LDAPAPIFeatureIn
5a50: 66 6f 57 20 4c 44 41 50 41 50 49 46 65 61 74 75  foW LDAPAPIFeatu
5a60: 72 65 49 6e 66 6f 3b 0a 09 61 6c 69 61 73 20 50  reInfo;..alias P
5a70: 4c 44 41 50 41 50 49 46 65 61 74 75 72 65 49 6e  LDAPAPIFeatureIn
5a80: 66 6f 57 20 50 4c 44 41 50 41 50 49 46 65 61 74  foW PLDAPAPIFeat
5a90: 75 72 65 49 6e 66 6f 3b 0a 09 61 6c 69 61 73 20  ureInfo;..alias 
5aa0: 63 6c 64 61 70 5f 6f 70 65 6e 57 20 63 6c 64 61  cldap_openW clda
5ab0: 70 5f 6f 70 65 6e 3b 0a 09 61 6c 69 61 73 20 6c  p_open;..alias l
5ac0: 64 61 70 5f 6f 70 65 6e 57 20 6c 64 61 70 5f 6f  dap_openW ldap_o
5ad0: 70 65 6e 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  pen;..alias ldap
5ae0: 5f 73 69 6d 70 6c 65 5f 62 69 6e 64 57 20 6c 64  _simple_bindW ld
5af0: 61 70 5f 73 69 6d 70 6c 65 5f 62 69 6e 64 3b 0a  ap_simple_bind;.
5b00: 09 61 6c 69 61 73 20 6c 64 61 70 5f 73 69 6d 70  .alias ldap_simp
5b10: 6c 65 5f 62 69 6e 64 5f 73 57 20 6c 64 61 70 5f  le_bind_sW ldap_
5b20: 73 69 6d 70 6c 65 5f 62 69 6e 64 5f 73 3b 0a 09  simple_bind_s;..
5b30: 61 6c 69 61 73 20 6c 64 61 70 5f 73 61 73 6c 5f  alias ldap_sasl_
5b40: 62 69 6e 64 57 20 6c 64 61 70 5f 73 61 73 6c 5f  bindW ldap_sasl_
5b50: 62 69 6e 64 3b 0a 09 61 6c 69 61 73 20 6c 64 61  bind;..alias lda
5b60: 70 5f 73 61 73 6c 5f 62 69 6e 64 5f 73 57 20 6c  p_sasl_bind_sW l
5b70: 64 61 70 5f 73 61 73 6c 5f 62 69 6e 64 5f 73 3b  dap_sasl_bind_s;
5b80: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 69 6e 69  ..alias ldap_ini
5b90: 74 57 20 6c 64 61 70 5f 69 6e 69 74 3b 0a 09 61  tW ldap_init;..a
5ba0: 6c 69 61 73 20 6c 64 61 70 5f 73 73 6c 69 6e 69  lias ldap_sslini
5bb0: 74 57 20 6c 64 61 70 5f 73 73 6c 69 6e 69 74 3b  tW ldap_sslinit;
5bc0: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 67 65 74  ..alias ldap_get
5bd0: 5f 6f 70 74 69 6f 6e 57 20 6c 64 61 70 5f 67 65  _optionW ldap_ge
5be0: 74 5f 6f 70 74 69 6f 6e 3b 0a 09 61 6c 69 61 73  t_option;..alias
5bf0: 20 6c 64 61 70 5f 73 65 74 5f 6f 70 74 69 6f 6e   ldap_set_option
5c00: 57 20 6c 64 61 70 5f 73 65 74 5f 6f 70 74 69 6f  W ldap_set_optio
5c10: 6e 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 73  n;..alias ldap_s
5c20: 74 61 72 74 5f 74 6c 73 5f 73 57 20 6c 64 61 70  tart_tls_sW ldap
5c30: 5f 73 74 61 72 74 5f 74 6c 73 5f 73 3b 0a 09 61  _start_tls_s;..a
5c40: 6c 69 61 73 20 6c 64 61 70 5f 61 64 64 57 20 6c  lias ldap_addW l
5c50: 64 61 70 5f 61 64 64 3b 0a 09 61 6c 69 61 73 20  dap_add;..alias 
5c60: 6c 64 61 70 5f 61 64 64 5f 65 78 74 57 20 6c 64  ldap_add_extW ld
5c70: 61 70 5f 61 64 64 5f 65 78 74 3b 0a 09 61 6c 69  ap_add_ext;..ali
5c80: 61 73 20 6c 64 61 70 5f 61 64 64 5f 73 57 20 6c  as ldap_add_sW l
5c90: 64 61 70 5f 61 64 64 5f 73 3b 0a 09 61 6c 69 61  dap_add_s;..alia
5ca0: 73 20 6c 64 61 70 5f 61 64 64 5f 65 78 74 5f 73  s ldap_add_ext_s
5cb0: 57 20 6c 64 61 70 5f 61 64 64 5f 65 78 74 5f 73  W ldap_add_ext_s
5cc0: 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 63 6f  ;..alias ldap_co
5cd0: 6d 70 61 72 65 57 20 6c 64 61 70 5f 63 6f 6d 70  mpareW ldap_comp
5ce0: 61 72 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  are;..alias ldap
5cf0: 5f 63 6f 6d 70 61 72 65 5f 65 78 74 57 20 6c 64  _compare_extW ld
5d00: 61 70 5f 63 6f 6d 70 61 72 65 5f 65 78 74 3b 0a  ap_compare_ext;.
5d10: 09 61 6c 69 61 73 20 6c 64 61 70 5f 63 6f 6d 70  .alias ldap_comp
5d20: 61 72 65 5f 73 57 20 6c 64 61 70 5f 63 6f 6d 70  are_sW ldap_comp
5d30: 61 72 65 5f 73 3b 0a 09 61 6c 69 61 73 20 6c 64  are_s;..alias ld
5d40: 61 70 5f 63 6f 6d 70 61 72 65 5f 65 78 74 5f 73  ap_compare_ext_s
5d50: 57 20 6c 64 61 70 5f 63 6f 6d 70 61 72 65 5f 65  W ldap_compare_e
5d60: 78 74 5f 73 3b 0a 09 61 6c 69 61 73 20 6c 64 61  xt_s;..alias lda
5d70: 70 5f 64 65 6c 65 74 65 57 20 6c 64 61 70 5f 64  p_deleteW ldap_d
5d80: 65 6c 65 74 65 3b 0a 09 61 6c 69 61 73 20 6c 64  elete;..alias ld
5d90: 61 70 5f 64 65 6c 65 74 65 5f 65 78 74 57 20 6c  ap_delete_extW l
5da0: 64 61 70 5f 64 65 6c 65 74 65 5f 65 78 74 3b 0a  dap_delete_ext;.
5db0: 09 61 6c 69 61 73 20 6c 64 61 70 5f 64 65 6c 65  .alias ldap_dele
5dc0: 74 65 5f 73 57 20 6c 64 61 70 5f 64 65 6c 65 74  te_sW ldap_delet
5dd0: 65 5f 73 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  e_s;..alias ldap
5de0: 5f 64 65 6c 65 74 65 5f 65 78 74 5f 73 57 20 6c  _delete_ext_sW l
5df0: 64 61 70 5f 64 65 6c 65 74 65 5f 65 78 74 5f 73  dap_delete_ext_s
5e00: 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 65 78  ;..alias ldap_ex
5e10: 74 65 6e 64 65 64 5f 6f 70 65 72 61 74 69 6f 6e  tended_operation
5e20: 5f 73 57 20 6c 64 61 70 5f 65 78 74 65 6e 64 65  _sW ldap_extende
5e30: 64 5f 6f 70 65 72 61 74 69 6f 6e 5f 73 3b 0a 09  d_operation_s;..
5e40: 61 6c 69 61 73 20 6c 64 61 70 5f 65 78 74 65 6e  alias ldap_exten
5e50: 64 65 64 5f 6f 70 65 72 61 74 69 6f 6e 57 20 6c  ded_operationW l
5e60: 64 61 70 5f 65 78 74 65 6e 64 65 64 5f 6f 70 65  dap_extended_ope
5e70: 72 61 74 69 6f 6e 3b 0a 09 61 6c 69 61 73 20 6c  ration;..alias l
5e80: 64 61 70 5f 6d 6f 64 69 66 79 57 20 6c 64 61 70  dap_modifyW ldap
5e90: 5f 6d 6f 64 69 66 79 3b 0a 09 61 6c 69 61 73 20  _modify;..alias 
5ea0: 6c 64 61 70 5f 6d 6f 64 69 66 79 5f 65 78 74 57  ldap_modify_extW
5eb0: 20 6c 64 61 70 5f 6d 6f 64 69 66 79 5f 65 78 74   ldap_modify_ext
5ec0: 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 6d 6f  ;..alias ldap_mo
5ed0: 64 69 66 79 5f 73 57 20 6c 64 61 70 5f 6d 6f 64  dify_sW ldap_mod
5ee0: 69 66 79 5f 73 3b 0a 09 61 6c 69 61 73 20 6c 64  ify_s;..alias ld
5ef0: 61 70 5f 6d 6f 64 69 66 79 5f 65 78 74 5f 73 57  ap_modify_ext_sW
5f00: 20 6c 64 61 70 5f 6d 6f 64 69 66 79 5f 65 78 74   ldap_modify_ext
5f10: 5f 73 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f  _s;..alias ldap_
5f20: 63 68 65 63 6b 5f 66 69 6c 74 65 72 57 20 6c 64  check_filterW ld
5f30: 61 70 5f 63 68 65 63 6b 5f 66 69 6c 74 65 72 3b  ap_check_filter;
5f40: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 63 6f 75  ..alias ldap_cou
5f50: 6e 74 5f 76 61 6c 75 65 73 57 20 6c 64 61 70 5f  nt_valuesW ldap_
5f60: 63 6f 75 6e 74 5f 76 61 6c 75 65 73 3b 0a 09 61  count_values;..a
5f70: 6c 69 61 73 20 6c 64 61 70 5f 63 72 65 61 74 65  lias ldap_create
5f80: 5f 70 61 67 65 5f 63 6f 6e 74 72 6f 6c 57 20 6c  _page_controlW l
5f90: 64 61 70 5f 63 72 65 61 74 65 5f 70 61 67 65 5f  dap_create_page_
5fa0: 63 6f 6e 74 72 6f 6c 3b 0a 09 61 6c 69 61 73 20  control;..alias 
5fb0: 6c 64 61 70 5f 63 72 65 61 74 65 5f 73 6f 72 74  ldap_create_sort
5fc0: 5f 63 6f 6e 74 72 6f 6c 57 20 6c 64 61 70 5f 63  _controlW ldap_c
5fd0: 72 65 61 74 65 5f 73 6f 72 74 5f 63 6f 6e 74 72  reate_sort_contr
5fe0: 6f 6c 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f  ol;..alias ldap_
5ff0: 63 72 65 61 74 65 5f 76 6c 76 5f 63 6f 6e 74 72  create_vlv_contr
6000: 6f 6c 57 20 6c 64 61 70 5f 63 72 65 61 74 65 5f  olW ldap_create_
6010: 76 6c 76 5f 63 6f 6e 74 72 6f 6c 3b 0a 09 61 6c  vlv_control;..al
6020: 69 61 73 20 6c 64 61 70 5f 65 6e 63 6f 64 65 5f  ias ldap_encode_
6030: 73 6f 72 74 5f 63 6f 6e 74 72 6f 6c 57 20 6c 64  sort_controlW ld
6040: 61 70 5f 65 6e 63 6f 64 65 5f 73 6f 72 74 5f 63  ap_encode_sort_c
6050: 6f 6e 74 72 6f 6c 3b 0a 09 61 6c 69 61 73 20 6c  ontrol;..alias l
6060: 64 61 70 5f 65 73 63 61 70 65 5f 66 69 6c 74 65  dap_escape_filte
6070: 72 5f 65 6c 65 6d 65 6e 74 57 20 6c 64 61 70 5f  r_elementW ldap_
6080: 65 73 63 61 70 65 5f 66 69 6c 74 65 72 5f 65 6c  escape_filter_el
6090: 65 6d 65 6e 74 3b 0a 09 61 6c 69 61 73 20 6c 64  ement;..alias ld
60a0: 61 70 5f 66 69 72 73 74 5f 61 74 74 72 69 62 75  ap_first_attribu
60b0: 74 65 57 20 6c 64 61 70 5f 66 69 72 73 74 5f 61  teW ldap_first_a
60c0: 74 74 72 69 62 75 74 65 3b 0a 09 61 6c 69 61 73  ttribute;..alias
60d0: 20 6c 64 61 70 5f 6e 65 78 74 5f 61 74 74 72 69   ldap_next_attri
60e0: 62 75 74 65 57 20 6c 64 61 70 5f 6e 65 78 74 5f  buteW ldap_next_
60f0: 61 74 74 72 69 62 75 74 65 3b 0a 09 61 6c 69 61  attribute;..alia
6100: 73 20 6c 64 61 70 5f 67 65 74 5f 76 61 6c 75 65  s ldap_get_value
6110: 73 57 20 6c 64 61 70 5f 67 65 74 5f 76 61 6c 75  sW ldap_get_valu
6120: 65 73 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f  es;..alias ldap_
6130: 67 65 74 5f 76 61 6c 75 65 73 5f 6c 65 6e 57 20  get_values_lenW 
6140: 6c 64 61 70 5f 67 65 74 5f 76 61 6c 75 65 73 5f  ldap_get_values_
6150: 6c 65 6e 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  len;..alias ldap
6160: 5f 70 61 72 73 65 5f 65 78 74 65 6e 64 65 64 5f  _parse_extended_
6170: 72 65 73 75 6c 74 57 20 6c 64 61 70 5f 70 61 72  resultW ldap_par
6180: 73 65 5f 65 78 74 65 6e 64 65 64 5f 72 65 73 75  se_extended_resu
6190: 6c 74 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f  lt;..alias ldap_
61a0: 70 61 72 73 65 5f 70 61 67 65 5f 63 6f 6e 74 72  parse_page_contr
61b0: 6f 6c 57 20 6c 64 61 70 5f 70 61 72 73 65 5f 70  olW ldap_parse_p
61c0: 61 67 65 5f 63 6f 6e 74 72 6f 6c 3b 0a 09 61 6c  age_control;..al
61d0: 69 61 73 20 6c 64 61 70 5f 70 61 72 73 65 5f 72  ias ldap_parse_r
61e0: 65 66 65 72 65 6e 63 65 57 20 6c 64 61 70 5f 70  eferenceW ldap_p
61f0: 61 72 73 65 5f 72 65 66 65 72 65 6e 63 65 3b 0a  arse_reference;.
6200: 09 61 6c 69 61 73 20 6c 64 61 70 5f 70 61 72 73  .alias ldap_pars
6210: 65 5f 72 65 73 75 6c 74 57 20 6c 64 61 70 5f 70  e_resultW ldap_p
6220: 61 72 73 65 5f 72 65 73 75 6c 74 3b 0a 09 61 6c  arse_result;..al
6230: 69 61 73 20 6c 64 61 70 5f 70 61 72 73 65 5f 73  ias ldap_parse_s
6240: 6f 72 74 5f 63 6f 6e 74 72 6f 6c 57 20 6c 64 61  ort_controlW lda
6250: 70 5f 70 61 72 73 65 5f 73 6f 72 74 5f 63 6f 6e  p_parse_sort_con
6260: 74 72 6f 6c 3b 0a 09 61 6c 69 61 73 20 6c 64 61  trol;..alias lda
6270: 70 5f 70 61 72 73 65 5f 76 6c 76 5f 63 6f 6e 74  p_parse_vlv_cont
6280: 72 6f 6c 57 20 6c 64 61 70 5f 70 61 72 73 65 5f  rolW ldap_parse_
6290: 76 6c 76 5f 63 6f 6e 74 72 6f 6c 3b 0a 09 61 6c  vlv_control;..al
62a0: 69 61 73 20 6c 64 61 70 5f 73 65 61 72 63 68 57  ias ldap_searchW
62b0: 20 6c 64 61 70 5f 73 65 61 72 63 68 3b 0a 09 61   ldap_search;..a
62c0: 6c 69 61 73 20 6c 64 61 70 5f 73 65 61 72 63 68  lias ldap_search
62d0: 5f 73 57 20 6c 64 61 70 5f 73 65 61 72 63 68 5f  _sW ldap_search_
62e0: 73 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 73  s;..alias ldap_s
62f0: 65 61 72 63 68 5f 73 74 57 20 6c 64 61 70 5f 73  earch_stW ldap_s
6300: 65 61 72 63 68 5f 73 74 3b 0a 09 61 6c 69 61 73  earch_st;..alias
6310: 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 65 78 74   ldap_search_ext
6320: 57 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 65 78  W ldap_search_ex
6330: 74 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 73  t;..alias ldap_s
6340: 65 61 72 63 68 5f 65 78 74 5f 73 57 20 6c 64 61  earch_ext_sW lda
6350: 70 5f 73 65 61 72 63 68 5f 65 78 74 5f 73 3b 0a  p_search_ext_s;.
6360: 09 61 6c 69 61 73 20 6c 64 61 70 5f 73 65 61 72  .alias ldap_sear
6370: 63 68 5f 69 6e 69 74 5f 70 61 67 65 57 20 6c 64  ch_init_pageW ld
6380: 61 70 5f 73 65 61 72 63 68 5f 69 6e 69 74 5f 70  ap_search_init_p
6390: 61 67 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  age;..alias ldap
63a0: 5f 65 72 72 32 73 74 72 69 6e 67 57 20 6c 64 61  _err2stringW lda
63b0: 70 5f 65 72 72 32 73 74 72 69 6e 67 3b 0a 09 61  p_err2string;..a
63c0: 6c 69 61 73 20 6c 64 61 70 5f 63 6f 6e 74 72 6f  lias ldap_contro
63d0: 6c 5f 66 72 65 65 57 20 6c 64 61 70 5f 63 6f 6e  l_freeW ldap_con
63e0: 74 72 6f 6c 5f 66 72 65 65 3b 0a 09 61 6c 69 61  trol_free;..alia
63f0: 73 20 6c 64 61 70 5f 63 6f 6e 74 72 6f 6c 73 5f  s ldap_controls_
6400: 66 72 65 65 57 20 6c 64 61 70 5f 63 6f 6e 74 72  freeW ldap_contr
6410: 6f 6c 73 5f 66 72 65 65 3b 0a 09 61 6c 69 61 73  ols_free;..alias
6420: 20 6c 64 61 70 5f 66 72 65 65 5f 63 6f 6e 74 72   ldap_free_contr
6430: 6f 6c 73 57 20 6c 64 61 70 5f 66 72 65 65 5f 63  olsW ldap_free_c
6440: 6f 6e 74 72 6f 6c 73 3b 0a 09 61 6c 69 61 73 20  ontrols;..alias 
6450: 6c 64 61 70 5f 6d 65 6d 66 72 65 65 57 20 6c 64  ldap_memfreeW ld
6460: 61 70 5f 6d 65 6d 66 72 65 65 3b 0a 09 61 6c 69  ap_memfree;..ali
6470: 61 73 20 6c 64 61 70 5f 76 61 6c 75 65 5f 66 72  as ldap_value_fr
6480: 65 65 57 20 6c 64 61 70 5f 76 61 6c 75 65 5f 66  eeW ldap_value_f
6490: 72 65 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  ree;..alias ldap
64a0: 5f 64 6e 32 75 66 6e 57 20 6c 64 61 70 5f 64 6e  _dn2ufnW ldap_dn
64b0: 32 75 66 6e 3b 0a 09 61 6c 69 61 73 20 6c 64 61  2ufn;..alias lda
64c0: 70 5f 75 66 6e 32 64 6e 57 20 6c 64 61 70 5f 75  p_ufn2dnW ldap_u
64d0: 66 6e 32 64 6e 3b 0a 09 61 6c 69 61 73 20 6c 64  fn2dn;..alias ld
64e0: 61 70 5f 65 78 70 6c 6f 64 65 5f 64 6e 57 20 6c  ap_explode_dnW l
64f0: 64 61 70 5f 65 78 70 6c 6f 64 65 5f 64 6e 3b 0a  dap_explode_dn;.
6500: 09 61 6c 69 61 73 20 6c 64 61 70 5f 67 65 74 5f  .alias ldap_get_
6510: 64 6e 57 20 6c 64 61 70 5f 67 65 74 5f 64 6e 3b  dnW ldap_get_dn;
6520: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 72 65 6e  ..alias ldap_ren
6530: 61 6d 65 5f 65 78 74 57 20 6c 64 61 70 5f 72 65  ame_extW ldap_re
6540: 6e 61 6d 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61  name;..alias lda
6550: 70 5f 72 65 6e 61 6d 65 5f 65 78 74 5f 73 57 20  p_rename_ext_sW 
6560: 6c 64 61 70 5f 72 65 6e 61 6d 65 5f 73 3b 0a 09  ldap_rename_s;..
6570: 61 6c 69 61 73 20 6c 64 61 70 5f 72 65 6e 61 6d  alias ldap_renam
6580: 65 5f 65 78 74 57 20 6c 64 61 70 5f 72 65 6e 61  e_extW ldap_rena
6590: 6d 65 5f 65 78 74 3b 0a 09 61 6c 69 61 73 20 6c  me_ext;..alias l
65a0: 64 61 70 5f 72 65 6e 61 6d 65 5f 65 78 74 5f 73  dap_rename_ext_s
65b0: 57 20 6c 64 61 70 5f 72 65 6e 61 6d 65 5f 65 78  W ldap_rename_ex
65c0: 74 5f 73 3b 0a 09 64 65 70 72 65 63 61 74 65 64  t_s;..deprecated
65d0: 20 7b 0a 09 09 61 6c 69 61 73 20 6c 64 61 70 5f   {...alias ldap_
65e0: 62 69 6e 64 57 20 6c 64 61 70 5f 62 69 6e 64 3b  bindW ldap_bind;
65f0: 0a 09 09 61 6c 69 61 73 20 6c 64 61 70 5f 62 69  ...alias ldap_bi
6600: 6e 64 5f 73 57 20 6c 64 61 70 5f 62 69 6e 64 5f  nd_sW ldap_bind_
6610: 73 3b 0a 09 09 61 6c 69 61 73 20 6c 64 61 70 5f  s;...alias ldap_
6620: 6d 6f 64 72 64 6e 57 20 6c 64 61 70 5f 6d 6f 64  modrdnW ldap_mod
6630: 72 64 6e 3b 0a 09 09 61 6c 69 61 73 20 6c 64 61  rdn;...alias lda
6640: 70 5f 6d 6f 64 72 64 6e 5f 73 57 20 6c 64 61 70  p_modrdn_sW ldap
6650: 5f 6d 6f 64 72 64 6e 5f 73 3b 0a 09 09 61 6c 69  _modrdn_s;...ali
6660: 61 73 20 6c 64 61 70 5f 6d 6f 64 72 64 6e 32 57  as ldap_modrdn2W
6670: 20 6c 64 61 70 5f 6d 6f 64 72 64 6e 32 3b 0a 09   ldap_modrdn2;..
6680: 09 61 6c 69 61 73 20 6c 64 61 70 5f 6d 6f 64 72  .alias ldap_modr
6690: 64 6e 32 5f 73 57 20 6c 64 61 70 5f 6d 6f 64 72  dn2_sW ldap_modr
66a0: 64 6e 32 5f 73 3b 0a 09 7d 0a 7d 20 65 6c 73 65  dn2_s;..}.} else
66b0: 20 7b 0a 09 61 6c 69 61 73 20 4c 44 41 50 43 6f   {..alias LDAPCo
66c0: 6e 74 72 6f 6c 41 20 4c 44 41 50 43 6f 6e 74 72  ntrolA LDAPContr
66d0: 6f 6c 3b 0a 09 61 6c 69 61 73 20 50 4c 44 41 50  ol;..alias PLDAP
66e0: 43 6f 6e 74 72 6f 6c 41 20 50 4c 44 41 50 43 6f  ControlA PLDAPCo
66f0: 6e 74 72 6f 6c 3b 0a 09 61 6c 69 61 73 20 4c 44  ntrol;..alias LD
6700: 41 50 4d 6f 64 41 20 4c 44 41 50 4d 6f 64 3b 0a  APModA LDAPMod;.
6710: 09 61 6c 69 61 73 20 4c 44 41 50 4d 6f 64 41 20  .alias LDAPModA 
6720: 50 4c 44 41 50 4d 6f 64 3b 0a 09 61 6c 69 61 73  PLDAPMod;..alias
6730: 20 4c 44 41 50 53 6f 72 74 4b 65 79 41 20 4c 44   LDAPSortKeyA LD
6740: 41 50 53 6f 72 74 4b 65 79 3b 0a 09 61 6c 69 61  APSortKey;..alia
6750: 73 20 50 4c 44 41 50 53 6f 72 74 4b 65 79 41 20  s PLDAPSortKeyA 
6760: 50 4c 44 41 50 53 6f 72 74 4b 65 79 3b 0a 09 61  PLDAPSortKey;..a
6770: 6c 69 61 73 20 4c 44 41 50 41 50 49 49 6e 66 6f  lias LDAPAPIInfo
6780: 41 20 4c 44 41 50 41 50 49 49 6e 66 6f 3b 0a 09  A LDAPAPIInfo;..
6790: 61 6c 69 61 73 20 50 4c 44 41 50 41 50 49 49 6e  alias PLDAPAPIIn
67a0: 66 6f 41 20 50 4c 44 41 50 41 50 49 49 6e 66 6f  foA PLDAPAPIInfo
67b0: 3b 0a 09 61 6c 69 61 73 20 4c 44 41 50 41 50 49  ;..alias LDAPAPI
67c0: 46 65 61 74 75 72 65 49 6e 66 6f 41 20 4c 44 41  FeatureInfoA LDA
67d0: 50 41 50 49 46 65 61 74 75 72 65 49 6e 66 6f 3b  PAPIFeatureInfo;
67e0: 0a 09 61 6c 69 61 73 20 50 4c 44 41 50 41 50 49  ..alias PLDAPAPI
67f0: 46 65 61 74 75 72 65 49 6e 66 6f 41 20 50 4c 44  FeatureInfoA PLD
6800: 41 50 41 50 49 46 65 61 74 75 72 65 49 6e 66 6f  APAPIFeatureInfo
6810: 3b 0a 09 61 6c 69 61 73 20 63 6c 64 61 70 5f 6f  ;..alias cldap_o
6820: 70 65 6e 41 20 63 6c 64 61 70 5f 6f 70 65 6e 3b  penA cldap_open;
6830: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 6f 70 65  ..alias ldap_ope
6840: 6e 41 20 6c 64 61 70 5f 6f 70 65 6e 3b 0a 09 61  nA ldap_open;..a
6850: 6c 69 61 73 20 6c 64 61 70 5f 73 69 6d 70 6c 65  lias ldap_simple
6860: 5f 62 69 6e 64 41 20 6c 64 61 70 5f 73 69 6d 70  _bindA ldap_simp
6870: 6c 65 5f 62 69 6e 64 3b 0a 09 61 6c 69 61 73 20  le_bind;..alias 
6880: 6c 64 61 70 5f 73 69 6d 70 6c 65 5f 62 69 6e 64  ldap_simple_bind
6890: 5f 73 41 20 6c 64 61 70 5f 73 69 6d 70 6c 65 5f  _sA ldap_simple_
68a0: 62 69 6e 64 5f 73 3b 0a 09 61 6c 69 61 73 20 6c  bind_s;..alias l
68b0: 64 61 70 5f 73 61 73 6c 5f 62 69 6e 64 41 20 6c  dap_sasl_bindA l
68c0: 64 61 70 5f 73 61 73 6c 5f 62 69 6e 64 3b 0a 09  dap_sasl_bind;..
68d0: 61 6c 69 61 73 20 6c 64 61 70 5f 73 61 73 6c 5f  alias ldap_sasl_
68e0: 62 69 6e 64 5f 73 41 20 6c 64 61 70 5f 73 61 73  bind_sA ldap_sas
68f0: 6c 5f 62 69 6e 64 5f 73 3b 0a 09 61 6c 69 61 73  l_bind_s;..alias
6900: 20 6c 64 61 70 5f 69 6e 69 74 41 20 6c 64 61 70   ldap_initA ldap
6910: 5f 69 6e 69 74 3b 0a 09 61 6c 69 61 73 20 6c 64  _init;..alias ld
6920: 61 70 5f 73 73 6c 69 6e 69 74 41 20 6c 64 61 70  ap_sslinitA ldap
6930: 5f 73 73 6c 69 6e 69 74 3b 0a 09 61 6c 69 61 73  _sslinit;..alias
6940: 20 6c 64 61 70 5f 67 65 74 5f 6f 70 74 69 6f 6e   ldap_get_option
6950: 41 20 6c 64 61 70 5f 67 65 74 5f 6f 70 74 69 6f  A ldap_get_optio
6960: 6e 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 73  n;..alias ldap_s
6970: 65 74 5f 6f 70 74 69 6f 6e 41 20 6c 64 61 70 5f  et_optionA ldap_
6980: 73 65 74 5f 6f 70 74 69 6f 6e 3b 0a 09 61 6c 69  set_option;..ali
6990: 61 73 20 6c 64 61 70 5f 73 74 61 72 74 5f 74 6c  as ldap_start_tl
69a0: 73 5f 73 41 20 6c 64 61 70 5f 73 74 61 72 74 5f  s_sA ldap_start_
69b0: 74 6c 73 5f 73 3b 0a 09 61 6c 69 61 73 20 6c 64  tls_s;..alias ld
69c0: 61 70 5f 61 64 64 41 20 6c 64 61 70 5f 61 64 64  ap_addA ldap_add
69d0: 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 61 64  ;..alias ldap_ad
69e0: 64 5f 65 78 74 41 20 6c 64 61 70 5f 61 64 64 5f  d_extA ldap_add_
69f0: 65 78 74 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  ext;..alias ldap
6a00: 5f 61 64 64 5f 73 41 20 6c 64 61 70 5f 61 64 64  _add_sA ldap_add
6a10: 5f 73 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f  _s;..alias ldap_
6a20: 61 64 64 5f 65 78 74 5f 73 41 20 6c 64 61 70 5f  add_ext_sA ldap_
6a30: 61 64 64 5f 65 78 74 5f 73 3b 0a 09 61 6c 69 61  add_ext_s;..alia
6a40: 73 20 6c 64 61 70 5f 63 6f 6d 70 61 72 65 41 20  s ldap_compareA 
6a50: 6c 64 61 70 5f 63 6f 6d 70 61 72 65 3b 0a 09 61  ldap_compare;..a
6a60: 6c 69 61 73 20 6c 64 61 70 5f 63 6f 6d 70 61 72  lias ldap_compar
6a70: 65 5f 65 78 74 41 20 6c 64 61 70 5f 63 6f 6d 70  e_extA ldap_comp
6a80: 61 72 65 5f 65 78 74 3b 0a 09 61 6c 69 61 73 20  are_ext;..alias 
6a90: 6c 64 61 70 5f 63 6f 6d 70 61 72 65 5f 73 41 20  ldap_compare_sA 
6aa0: 6c 64 61 70 5f 63 6f 6d 70 61 72 65 5f 73 3b 0a  ldap_compare_s;.
6ab0: 09 61 6c 69 61 73 20 6c 64 61 70 5f 63 6f 6d 70  .alias ldap_comp
6ac0: 61 72 65 5f 65 78 74 5f 73 41 20 6c 64 61 70 5f  are_ext_sA ldap_
6ad0: 63 6f 6d 70 61 72 65 5f 65 78 74 5f 73 3b 0a 09  compare_ext_s;..
6ae0: 61 6c 69 61 73 20 6c 64 61 70 5f 64 65 6c 65 74  alias ldap_delet
6af0: 65 41 20 6c 64 61 70 5f 64 65 6c 65 74 65 3b 0a  eA ldap_delete;.
6b00: 09 61 6c 69 61 73 20 6c 64 61 70 5f 64 65 6c 65  .alias ldap_dele
6b10: 74 65 5f 65 78 74 41 20 6c 64 61 70 5f 64 65 6c  te_extA ldap_del
6b20: 65 74 65 5f 65 78 74 3b 0a 09 61 6c 69 61 73 20  ete_ext;..alias 
6b30: 6c 64 61 70 5f 64 65 6c 65 74 65 5f 73 41 20 6c  ldap_delete_sA l
6b40: 64 61 70 5f 64 65 6c 65 74 65 5f 73 3b 0a 09 61  dap_delete_s;..a
6b50: 6c 69 61 73 20 6c 64 61 70 5f 64 65 6c 65 74 65  lias ldap_delete
6b60: 5f 65 78 74 5f 73 41 20 6c 64 61 70 5f 64 65 6c  _ext_sA ldap_del
6b70: 65 74 65 5f 65 78 74 5f 73 3b 0a 09 61 6c 69 61  ete_ext_s;..alia
6b80: 73 20 6c 64 61 70 5f 65 78 74 65 6e 64 65 64 5f  s ldap_extended_
6b90: 6f 70 65 72 61 74 69 6f 6e 5f 73 41 20 6c 64 61  operation_sA lda
6ba0: 70 5f 65 78 74 65 6e 64 65 64 5f 6f 70 65 72 61  p_extended_opera
6bb0: 74 69 6f 6e 5f 73 3b 0a 09 61 6c 69 61 73 20 6c  tion_s;..alias l
6bc0: 64 61 70 5f 65 78 74 65 6e 64 65 64 5f 6f 70 65  dap_extended_ope
6bd0: 72 61 74 69 6f 6e 41 20 6c 64 61 70 5f 65 78 74  rationA ldap_ext
6be0: 65 6e 64 65 64 5f 6f 70 65 72 61 74 69 6f 6e 3b  ended_operation;
6bf0: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 6d 6f 64  ..alias ldap_mod
6c00: 69 66 79 41 20 6c 64 61 70 5f 6d 6f 64 69 66 79  ifyA ldap_modify
6c10: 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 6d 6f  ;..alias ldap_mo
6c20: 64 69 66 79 5f 65 78 74 41 20 6c 64 61 70 5f 6d  dify_extA ldap_m
6c30: 6f 64 69 66 79 5f 65 78 74 3b 0a 09 61 6c 69 61  odify_ext;..alia
6c40: 73 20 6c 64 61 70 5f 6d 6f 64 69 66 79 5f 73 41  s ldap_modify_sA
6c50: 20 6c 64 61 70 5f 6d 6f 64 69 66 79 5f 73 3b 0a   ldap_modify_s;.
6c60: 09 61 6c 69 61 73 20 6c 64 61 70 5f 6d 6f 64 69  .alias ldap_modi
6c70: 66 79 5f 65 78 74 5f 73 41 20 6c 64 61 70 5f 6d  fy_ext_sA ldap_m
6c80: 6f 64 69 66 79 5f 65 78 74 5f 73 3b 0a 09 61 6c  odify_ext_s;..al
6c90: 69 61 73 20 6c 64 61 70 5f 63 68 65 63 6b 5f 66  ias ldap_check_f
6ca0: 69 6c 74 65 72 41 20 6c 64 61 70 5f 63 68 65 63  ilterA ldap_chec
6cb0: 6b 5f 66 69 6c 74 65 72 3b 0a 09 61 6c 69 61 73  k_filter;..alias
6cc0: 20 6c 64 61 70 5f 63 6f 75 6e 74 5f 76 61 6c 75   ldap_count_valu
6cd0: 65 73 41 20 6c 64 61 70 5f 63 6f 75 6e 74 5f 76  esA ldap_count_v
6ce0: 61 6c 75 65 73 3b 0a 09 61 6c 69 61 73 20 6c 64  alues;..alias ld
6cf0: 61 70 5f 63 72 65 61 74 65 5f 70 61 67 65 5f 63  ap_create_page_c
6d00: 6f 6e 74 72 6f 6c 41 20 6c 64 61 70 5f 63 72 65  ontrolA ldap_cre
6d10: 61 74 65 5f 70 61 67 65 5f 63 6f 6e 74 72 6f 6c  ate_page_control
6d20: 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 63 72  ;..alias ldap_cr
6d30: 65 61 74 65 5f 73 6f 72 74 5f 63 6f 6e 74 72 6f  eate_sort_contro
6d40: 6c 41 20 6c 64 61 70 5f 63 72 65 61 74 65 5f 73  lA ldap_create_s
6d50: 6f 72 74 5f 63 6f 6e 74 72 6f 6c 3b 0a 09 61 6c  ort_control;..al
6d60: 69 61 73 20 6c 64 61 70 5f 63 72 65 61 74 65 5f  ias ldap_create_
6d70: 76 6c 76 5f 63 6f 6e 74 72 6f 6c 41 20 6c 64 61  vlv_controlA lda
6d80: 70 5f 63 72 65 61 74 65 5f 76 6c 76 5f 63 6f 6e  p_create_vlv_con
6d90: 74 72 6f 6c 3b 0a 09 61 6c 69 61 73 20 6c 64 61  trol;..alias lda
6da0: 70 5f 65 6e 63 6f 64 65 5f 73 6f 72 74 5f 63 6f  p_encode_sort_co
6db0: 6e 74 72 6f 6c 41 20 6c 64 61 70 5f 65 6e 63 6f  ntrolA ldap_enco
6dc0: 64 65 5f 73 6f 72 74 5f 63 6f 6e 74 72 6f 6c 3b  de_sort_control;
6dd0: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 65 73 63  ..alias ldap_esc
6de0: 61 70 65 5f 66 69 6c 74 65 72 5f 65 6c 65 6d 65  ape_filter_eleme
6df0: 6e 74 41 20 6c 64 61 70 5f 65 73 63 61 70 65 5f  ntA ldap_escape_
6e00: 66 69 6c 74 65 72 5f 65 6c 65 6d 65 6e 74 3b 0a  filter_element;.
6e10: 09 61 6c 69 61 73 20 6c 64 61 70 5f 66 69 72 73  .alias ldap_firs
6e20: 74 5f 61 74 74 72 69 62 75 74 65 41 20 6c 64 61  t_attributeA lda
6e30: 70 5f 66 69 72 73 74 5f 61 74 74 72 69 62 75 74  p_first_attribut
6e40: 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 6e  e;..alias ldap_n
6e50: 65 78 74 5f 61 74 74 72 69 62 75 74 65 41 20 6c  ext_attributeA l
6e60: 64 61 70 5f 6e 65 78 74 5f 61 74 74 72 69 62 75  dap_next_attribu
6e70: 74 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f  te;..alias ldap_
6e80: 67 65 74 5f 76 61 6c 75 65 73 41 20 6c 64 61 70  get_valuesA ldap
6e90: 5f 67 65 74 5f 76 61 6c 75 65 73 3b 0a 09 61 6c  _get_values;..al
6ea0: 69 61 73 20 6c 64 61 70 5f 67 65 74 5f 76 61 6c  ias ldap_get_val
6eb0: 75 65 73 5f 6c 65 6e 41 20 6c 64 61 70 5f 67 65  ues_lenA ldap_ge
6ec0: 74 5f 76 61 6c 75 65 73 5f 6c 65 6e 3b 0a 09 61  t_values_len;..a
6ed0: 6c 69 61 73 20 6c 64 61 70 5f 70 61 72 73 65 5f  lias ldap_parse_
6ee0: 65 78 74 65 6e 64 65 64 5f 72 65 73 75 6c 74 41  extended_resultA
6ef0: 20 6c 64 61 70 5f 70 61 72 73 65 5f 65 78 74 65   ldap_parse_exte
6f00: 6e 64 65 64 5f 72 65 73 75 6c 74 3b 0a 09 61 6c  nded_result;..al
6f10: 69 61 73 20 6c 64 61 70 5f 70 61 72 73 65 5f 70  ias ldap_parse_p
6f20: 61 67 65 5f 63 6f 6e 74 72 6f 6c 41 20 6c 64 61  age_controlA lda
6f30: 70 5f 70 61 72 73 65 5f 70 61 67 65 5f 63 6f 6e  p_parse_page_con
6f40: 74 72 6f 6c 3b 0a 09 61 6c 69 61 73 20 6c 64 61  trol;..alias lda
6f50: 70 5f 70 61 72 73 65 5f 72 65 66 65 72 65 6e 63  p_parse_referenc
6f60: 65 41 20 6c 64 61 70 5f 70 61 72 73 65 5f 72 65  eA ldap_parse_re
6f70: 66 65 72 65 6e 63 65 3b 0a 09 61 6c 69 61 73 20  ference;..alias 
6f80: 6c 64 61 70 5f 70 61 72 73 65 5f 72 65 73 75 6c  ldap_parse_resul
6f90: 74 41 20 6c 64 61 70 5f 70 61 72 73 65 5f 72 65  tA ldap_parse_re
6fa0: 73 75 6c 74 3b 0a 09 61 6c 69 61 73 20 6c 64 61  sult;..alias lda
6fb0: 70 5f 70 61 72 73 65 5f 73 6f 72 74 5f 63 6f 6e  p_parse_sort_con
6fc0: 74 72 6f 6c 41 20 6c 64 61 70 5f 70 61 72 73 65  trolA ldap_parse
6fd0: 5f 73 6f 72 74 5f 63 6f 6e 74 72 6f 6c 3b 0a 09  _sort_control;..
6fe0: 61 6c 69 61 73 20 6c 64 61 70 5f 70 61 72 73 65  alias ldap_parse
6ff0: 5f 76 6c 76 5f 63 6f 6e 74 72 6f 6c 41 20 6c 64  _vlv_controlA ld
7000: 61 70 5f 70 61 72 73 65 5f 76 6c 76 5f 63 6f 6e  ap_parse_vlv_con
7010: 74 72 6f 6c 3b 0a 09 61 6c 69 61 73 20 6c 64 61  trol;..alias lda
7020: 70 5f 73 65 61 72 63 68 41 20 6c 64 61 70 5f 73  p_searchA ldap_s
7030: 65 61 72 63 68 3b 0a 09 61 6c 69 61 73 20 6c 64  earch;..alias ld
7040: 61 70 5f 73 65 61 72 63 68 5f 73 41 20 6c 64 61  ap_search_sA lda
7050: 70 5f 73 65 61 72 63 68 5f 73 3b 0a 09 61 6c 69  p_search_s;..ali
7060: 61 73 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 73  as ldap_search_s
7070: 74 41 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 73  tA ldap_search_s
7080: 74 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 73  t;..alias ldap_s
7090: 65 61 72 63 68 5f 65 78 74 41 20 6c 64 61 70 5f  earch_extA ldap_
70a0: 73 65 61 72 63 68 5f 65 78 74 3b 0a 09 61 6c 69  search_ext;..ali
70b0: 61 73 20 6c 64 61 70 5f 73 65 61 72 63 68 5f 65  as ldap_search_e
70c0: 78 74 5f 73 41 20 6c 64 61 70 5f 73 65 61 72 63  xt_sA ldap_searc
70d0: 68 5f 65 78 74 5f 73 3b 0a 09 61 6c 69 61 73 20  h_ext_s;..alias 
70e0: 6c 64 61 70 5f 73 65 61 72 63 68 5f 69 6e 69 74  ldap_search_init
70f0: 5f 70 61 67 65 41 20 6c 64 61 70 5f 73 65 61 72  _pageA ldap_sear
7100: 63 68 5f 69 6e 69 74 5f 70 61 67 65 3b 0a 09 61  ch_init_page;..a
7110: 6c 69 61 73 20 6c 64 61 70 5f 65 72 72 32 73 74  lias ldap_err2st
7120: 72 69 6e 67 41 20 6c 64 61 70 5f 65 72 72 32 73  ringA ldap_err2s
7130: 74 72 69 6e 67 3b 0a 09 61 6c 69 61 73 20 6c 64  tring;..alias ld
7140: 61 70 5f 63 6f 6e 74 72 6f 6c 5f 66 72 65 65 41  ap_control_freeA
7150: 20 6c 64 61 70 5f 63 6f 6e 74 72 6f 6c 5f 66 72   ldap_control_fr
7160: 65 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f  ee;..alias ldap_
7170: 63 6f 6e 74 72 6f 6c 73 5f 66 72 65 65 41 20 6c  controls_freeA l
7180: 64 61 70 5f 63 6f 6e 74 72 6f 6c 73 5f 66 72 65  dap_controls_fre
7190: 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 66  e;..alias ldap_f
71a0: 72 65 65 5f 63 6f 6e 74 72 6f 6c 73 41 20 6c 64  ree_controlsA ld
71b0: 61 70 5f 66 72 65 65 5f 63 6f 6e 74 72 6f 6c 73  ap_free_controls
71c0: 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 6d 65  ;..alias ldap_me
71d0: 6d 66 72 65 65 41 20 6c 64 61 70 5f 6d 65 6d 66  mfreeA ldap_memf
71e0: 72 65 65 3b 0a 09 61 6c 69 61 73 20 6c 64 61 70  ree;..alias ldap
71f0: 5f 76 61 6c 75 65 5f 66 72 65 65 41 20 6c 64 61  _value_freeA lda
7200: 70 5f 76 61 6c 75 65 5f 66 72 65 65 3b 0a 09 61  p_value_free;..a
7210: 6c 69 61 73 20 6c 64 61 70 5f 64 6e 32 75 66 6e  lias ldap_dn2ufn
7220: 41 20 6c 64 61 70 5f 64 6e 32 75 66 6e 3b 0a 09  A ldap_dn2ufn;..
7230: 61 6c 69 61 73 20 6c 64 61 70 5f 75 66 6e 32 64  alias ldap_ufn2d
7240: 6e 41 20 6c 64 61 70 5f 75 66 6e 32 64 6e 3b 0a  nA ldap_ufn2dn;.
7250: 09 61 6c 69 61 73 20 6c 64 61 70 5f 65 78 70 6c  .alias ldap_expl
7260: 6f 64 65 5f 64 6e 41 20 6c 64 61 70 5f 65 78 70  ode_dnA ldap_exp
7270: 6c 6f 64 65 5f 64 6e 3b 0a 09 61 6c 69 61 73 20  lode_dn;..alias 
7280: 6c 64 61 70 5f 67 65 74 5f 64 6e 41 20 6c 64 61  ldap_get_dnA lda
7290: 70 5f 67 65 74 5f 64 6e 3b 0a 09 61 6c 69 61 73  p_get_dn;..alias
72a0: 20 6c 64 61 70 5f 72 65 6e 61 6d 65 5f 65 78 74   ldap_rename_ext
72b0: 41 20 6c 64 61 70 5f 72 65 6e 61 6d 65 3b 0a 09  A ldap_rename;..
72c0: 61 6c 69 61 73 20 6c 64 61 70 5f 72 65 6e 61 6d  alias ldap_renam
72d0: 65 5f 65 78 74 5f 73 41 20 6c 64 61 70 5f 72 65  e_ext_sA ldap_re
72e0: 6e 61 6d 65 5f 73 3b 0a 09 61 6c 69 61 73 20 6c  name_s;..alias l
72f0: 64 61 70 5f 72 65 6e 61 6d 65 5f 65 78 74 41 20  dap_rename_extA 
7300: 6c 64 61 70 5f 72 65 6e 61 6d 65 5f 65 78 74 3b  ldap_rename_ext;
7310: 0a 09 61 6c 69 61 73 20 6c 64 61 70 5f 72 65 6e  ..alias ldap_ren
7320: 61 6d 65 5f 65 78 74 5f 73 41 20 6c 64 61 70 5f  ame_ext_sA ldap_
7330: 72 65 6e 61 6d 65 5f 65 78 74 5f 73 3b 0a 09 64  rename_ext_s;..d
7340: 65 70 72 65 63 61 74 65 64 20 7b 0a 09 09 61 6c  eprecated {...al
7350: 69 61 73 20 6c 64 61 70 5f 62 69 6e 64 41 20 6c  ias ldap_bindA l
7360: 64 61 70 5f 62 69 6e 64 3b 0a 09 09 61 6c 69 61  dap_bind;...alia
7370: 73 20 6c 64 61 70 5f 62 69 6e 64 5f 73 41 20 6c  s ldap_bind_sA l
7380: 64 61 70 5f 62 69 6e 64 5f 73 3b 0a 09 09 61 6c  dap_bind_s;...al
7390: 69 61 73 20 6c 64 61 70 5f 6d 6f 64 72 64 6e 41  ias ldap_modrdnA
73a0: 20 6c 64 61 70 5f 6d 6f 64 72 64 6e 3b 0a 09 09   ldap_modrdn;...
73b0: 61 6c 69 61 73 20 6c 64 61 70 5f 6d 6f 64 72 64  alias ldap_modrd
73c0: 6e 5f 73 41 20 6c 64 61 70 5f 6d 6f 64 72 64 6e  n_sA ldap_modrdn
73d0: 5f 73 3b 0a 09 09 61 6c 69 61 73 20 6c 64 61 70  _s;...alias ldap
73e0: 5f 6d 6f 64 72 64 6e 32 41 20 6c 64 61 70 5f 6d  _modrdn2A ldap_m
73f0: 6f 64 72 64 6e 32 3b 0a 09 09 61 6c 69 61 73 20  odrdn2;...alias 
7400: 6c 64 61 70 5f 6d 6f 64 72 64 6e 32 5f 73 41 20  ldap_modrdn2_sA 
7410: 6c 64 61 70 5f 6d 6f 64 72 64 6e 32 5f 73 3b 0a  ldap_modrdn2_s;.
7420: 09 7d 0a 7d 0a                                   .}.}.