; 
; Exports of file adsldpc.dll
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY adsldpc.dll
EXPORTS
; public: __cdecl CLexer::CLexer(void) __ptr64
??0CLexer@@QEAA@XZ
; public: __cdecl CLexer::~CLexer(void) __ptr64
??1CLexer@@QEAA@XZ
ADsAbandonSearch
ADsCloseSearchHandle
ADsCreateAttributeDefinition
ADsCreateClassDefinition
ADsCreateDSObject
ADsCreateDSObjectExt
ADsDeleteAttributeDefinition
ADsDeleteClassDefinition
ADsDeleteDSObject
ADsEnumAttributes
ADsEnumClasses
ADsExecuteSearch
ADsFreeColumn
ADsGetColumn
ADsGetFirstRow
ADsGetNextColumnName
ADsGetNextRow
ADsGetObjectAttributes
ADsGetPreviousRow
ADsHelperGetCurrentRowMessage
ADsObject
ADsSetObjectAttributes
ADsSetSearchPreference
ADsWriteAttributeDefinition
ADsWriteClassDefinition
AdsTypeToLdapTypeCopyConstruct
AdsTypeToLdapTypeCopyDNWithBinary
AdsTypeToLdapTypeCopyDNWithString
AdsTypeToLdapTypeCopyGeneralizedTime
AdsTypeToLdapTypeCopyTime
BerBvFree
BerEncodingQuotaControl
BuildADsParentPath
BuildADsParentPathFromObjectInfo2
BuildADsParentPathFromObjectInfo
BuildADsPathFromLDAPPath2
BuildADsPathFromLDAPPath
BuildADsPathFromParent
BuildLDAPPathFromADsPath2
BuildLDAPPathFromADsPath
ChangeSeparator
Component
ConvertSidToString
ConvertSidToU2Trustee
ConvertU2TrusteeToSid
FindEntryInSearchTable
FindSearchTableIndex
FreeObjectInfo
GetDefaultServer
GetDisplayName
GetDomainDNSNameForDomain
GetLDAPTypeName
; public: long __cdecl CLexer::GetNextToken(unsigned short * __ptr64,unsigned long * __ptr64) __ptr64
?GetNextToken@CLexer@@QEAAJPEAGPEAK@Z
GetSyntaxOfAttribute
InitObjectInfo
; public: long __cdecl CLexer::InitializePath(unsigned short * __ptr64) __ptr64
?InitializePath@CLexer@@QEAAJPEAG@Z
IsGCNamespace
LdapAddExtS
LdapAddS
LdapAttributeFree
LdapCacheAddRef
LdapCloseObject
LdapCompareExt
LdapControlFree
LdapControlsFree
LdapCountEntries
LdapCrackUserDNtoNTLMUser2
LdapCrackUserDNtoNTLMUser
LdapCreatePageControl
LdapDeleteExtS
LdapDeleteS
LdapFirstAttribute
LdapFirstEntry
LdapGetDn
LdapGetNextPageS
LdapGetSchemaObjectCount
LdapGetSubSchemaSubEntryPath
LdapGetSyntaxIdOfAttribute
LdapGetSyntaxOfAttributeOnServer
LdapGetValues
LdapGetValuesLen
LdapInitializeSearchPreferences
LdapIsClassNameValidOnServer
LdapMakeSchemaCacheObsolete
LdapMemFree
LdapModDnS
LdapModifyExtS
LdapModifyS
LdapMsgFree
LdapNextAttribute
LdapNextEntry
LdapOpenObject2
LdapOpenObject
LdapParsePageControl
LdapParseResult
LdapReadAttribute2
LdapReadAttribute
LdapReadAttributeFast
LdapRenameExtS
LdapResult
LdapSearch
LdapSearchAbandonPage
LdapSearchExtS
LdapSearchInitPage
LdapSearchS
LdapSearchST
LdapTypeBinaryToString
LdapTypeCopyConstruct
LdapTypeFreeLdapModList
LdapTypeFreeLdapModObject
LdapTypeFreeLdapObjects
LdapTypeToAdsTypeDNWithBinary
LdapTypeToAdsTypeDNWithString
LdapTypeToAdsTypeGeneralizedTime
LdapTypeToAdsTypeUTCTime
LdapValueFree
LdapValueFreeLen
LdapcKeepHandleAround
LdapcSetStickyServer
PathName
ReadPagingSupportedAttr
ReadSecurityDescriptorControlType
ReadServerSupportsIsADControl
SchemaAddRef
SchemaClose
SchemaGetClassInfo
SchemaGetClassInfoByIndex
SchemaGetObjectCount
SchemaGetPropertyInfo
SchemaGetPropertyInfoByIndex
SchemaGetStringsFromStringTable
SchemaGetSyntaxOfAttribute
SchemaIsClassAContainer
SchemaOpen
; public: void __cdecl CLexer::SetAtDisabler(int) __ptr64
?SetAtDisabler@CLexer@@QEAAXH@Z
; public: void __cdecl CLexer::SetExclaimnationDisabler(int) __ptr64
?SetExclaimnationDisabler@CLexer@@QEAAXH@Z
; public: void __cdecl CLexer::SetFSlashDisabler(int) __ptr64
?SetFSlashDisabler@CLexer@@QEAAXH@Z
SortAndRemoveDuplicateOIDs
UnMarshallLDAPToLDAPSynID
intcmp
ADSIAbandonSearch
ADSICloseDSObject
ADSICloseSearchHandle
ADSICreateDSObject
ADSIDeleteDSObject
ADSIExecuteSearch
ADSIFreeColumn
ADSIGetColumn
ADSIGetFirstRow
ADSIGetNextColumnName
ADSIGetNextRow
ADSIGetObjectAttributes
ADSIGetPreviousRow
ADSIModifyRdn
ADSIOpenDSObject
ADSISetObjectAttributes
ADSISetSearchPreference
ADsDecodeBinaryData
ADsEncodeBinaryData
ADsGetLastError
ADsSetLastError
AdsTypeFreeAdsObjects
AllocADsMem
AllocADsStr
FreeADsMem
FreeADsStr
LdapTypeToAdsTypeCopyConstruct
MapADSTypeToLDAPType
MapLDAPTypeToADSType
ReallocADsMem
ReallocADsStr
