|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1995.
//
// File: ods2nds.cxx
//
// Contents: NDS Object to Variant Copy Routines
//
// Functions:
//
// History: 25-Apr-96 KrishnaG Created.
//
//
//
//----------------------------------------------------------------------------
#include "nds.hxx"
LPBYTE AdsTypeCopyDNString( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_DN_STRING){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_DN_STRING;
lpAdsDestValue->DNString = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->DNString);
dwLength = (wcslen(lpAdsSrcValue->DNString) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyCaseExactString( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_CASE_EXACT_STRING){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_CASE_EXACT_STRING;
lpAdsDestValue->CaseExactString = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->CaseExactString);
dwLength = (wcslen(lpAdsSrcValue->CaseExactString) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyCaseIgnoreString( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer )
{ DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_CASE_IGNORE_STRING){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_CASE_IGNORE_STRING;
lpAdsDestValue->CaseIgnoreString = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->CaseIgnoreString);
dwLength = (wcslen(lpAdsSrcValue->CaseIgnoreString) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyPrintableString( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) {
DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_PRINTABLE_STRING){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_PRINTABLE_STRING;
lpAdsDestValue->PrintableString = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->PrintableString);
dwLength = (wcslen(lpAdsSrcValue->PrintableString) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyNumericString( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_NUMERIC_STRING){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_NUMERIC_STRING;
lpAdsDestValue->NumericString = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->NumericString);
dwLength = (wcslen(lpAdsSrcValue->NumericString) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyBoolean( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) {
if(lpAdsSrcValue->dwType != ADSTYPE_BOOLEAN){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_BOOLEAN;
lpAdsDestValue->Boolean = lpAdsSrcValue->Boolean;
return(lpBuffer); }
LPBYTE AdsTypeCopyInteger( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) {
if(lpAdsSrcValue->dwType != ADSTYPE_INTEGER){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_INTEGER;
lpAdsDestValue->Integer = lpAdsSrcValue->Integer;
return(lpBuffer); }
LPBYTE AdsTypeCopyOctetString( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { LPBYTE lpByteStream = NULL; DWORD dwNumBytes = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_OCTET_STRING){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_OCTET_STRING;
dwNumBytes = lpAdsSrcValue->OctetString.dwLength;
memcpy( lpBuffer, lpAdsSrcValue->OctetString.lpValue, dwNumBytes );
lpAdsDestValue->OctetString.dwLength = dwNumBytes;
lpAdsDestValue->OctetString.lpValue = lpBuffer;
lpBuffer += dwNumBytes;
return(lpBuffer); }
LPBYTE AdsTypeCopyTime( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) {
if(lpAdsSrcValue->dwType != ADSTYPE_UTC_TIME){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_UTC_TIME;
lpAdsDestValue->UTCTime = lpAdsSrcValue->UTCTime;
return(lpBuffer); }
LPBYTE AdsTypeCopyObjectClass( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_OBJECT_CLASS){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_OBJECT_CLASS;
lpAdsDestValue->ClassName = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->ClassName);
dwLength = (wcslen(lpAdsSrcValue->ClassName) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
//
// New Code
//
LPBYTE AdsTypeCopyCaseIgnoreList( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0; PADS_CASEIGNORE_LIST pAdsNext = lpAdsSrcValue->pCaseIgnoreList; PADS_CASEIGNORE_LIST pNdsOutput = NULL; PADS_CASEIGNORE_LIST pNdsCurrent = NULL;
if(lpAdsSrcValue->dwType != ADSTYPE_CASEIGNORE_LIST){ return(lpBuffer); } if (lpAdsSrcValue->pCaseIgnoreList == NULL) { return(lpBuffer); }
lpAdsDestValue->pCaseIgnoreList = (PADS_CASEIGNORE_LIST)lpBuffer; lpBuffer+=sizeof(ADS_CASEIGNORE_LIST); pNdsOutput = lpAdsDestValue->pCaseIgnoreList;
lpAdsDestValue->dwType = ADSTYPE_CASEIGNORE_LIST;
pNdsOutput->String = (LPWSTR)lpBuffer; wcscpy((LPWSTR)lpBuffer, pAdsNext->String); dwLength = (wcslen(pAdsNext->String) + 1)*sizeof(WCHAR); lpBuffer += dwLength;
pAdsNext = pAdsNext->Next; while (pAdsNext) { pNdsCurrent = (PADS_CASEIGNORE_LIST)lpBuffer; lpBuffer += sizeof(ADS_CASEIGNORE_LIST);
pNdsCurrent->String = (LPWSTR)lpBuffer; wcscpy((LPWSTR)lpBuffer, pAdsNext->String); dwLength = (wcslen(pAdsNext->String) + 1)*sizeof(WCHAR); lpBuffer += dwLength; pNdsOutput->Next = pNdsCurrent; pNdsOutput = pNdsOutput->Next; pAdsNext = pAdsNext->Next; }
pNdsOutput->Next = NULL;
return(lpBuffer); }
LPBYTE AdsTypeCopyOctetList( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { LPBYTE lpByteStream = NULL; DWORD dwNumBytes = 0; DWORD dwLength = 0; PADS_OCTET_LIST pAdsNext = lpAdsSrcValue->pOctetList; PADS_OCTET_LIST pNdsOutput = NULL; PADS_OCTET_LIST pNdsCurrent = NULL;
if(lpAdsSrcValue->dwType != ADSTYPE_OCTET_LIST){ return(lpBuffer); }
if (lpAdsSrcValue->pOctetList == NULL) { return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_OCTET_LIST;
lpAdsDestValue->pOctetList = (PADS_OCTET_LIST)lpBuffer; lpBuffer+=sizeof(ADS_OCTET_LIST); pNdsOutput = lpAdsDestValue->pOctetList;
dwNumBytes = pAdsNext->Length; memcpy( lpBuffer, pAdsNext->Data, dwNumBytes ); pNdsOutput->Length = dwNumBytes; pNdsOutput->Data = lpBuffer; lpBuffer += dwNumBytes;
pAdsNext = pAdsNext->Next; while (pAdsNext) { pNdsCurrent = (PADS_OCTET_LIST)lpBuffer; lpBuffer += sizeof(ADS_OCTET_LIST);
dwNumBytes = pAdsNext->Length; memcpy( lpBuffer, pAdsNext->Data, dwNumBytes ); pNdsCurrent->Length = dwNumBytes; pNdsCurrent->Data = lpBuffer; lpBuffer += dwNumBytes;
pNdsOutput->Next = pNdsCurrent; pNdsOutput = pNdsOutput->Next; pAdsNext = pAdsNext->Next; }
pNdsOutput->Next = NULL;
return(lpBuffer); }
LPBYTE AdsTypeCopyPath( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_PATH){ return(lpBuffer); } if (lpAdsSrcValue->pPath == NULL) { return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_PATH;
lpAdsDestValue->pPath = (PADS_PATH)lpBuffer; lpBuffer+=sizeof(ADS_PATH);
lpAdsDestValue->pPath->Type = lpAdsSrcValue->pPath->Type;
lpAdsDestValue->pPath->VolumeName = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->pPath->VolumeName);
dwLength = (wcslen(lpAdsSrcValue->pPath->VolumeName) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
lpAdsDestValue->pPath->Path= (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->pPath->Path);
dwLength = (wcslen(lpAdsSrcValue->pPath->Path) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyPostalAddress( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0; long i;
if(lpAdsSrcValue->dwType != ADSTYPE_POSTALADDRESS){ return(lpBuffer); }
if (lpAdsSrcValue->pPostalAddress == NULL) { return(lpBuffer); }
lpAdsDestValue->pPostalAddress = (PADS_POSTALADDRESS)lpBuffer; lpBuffer+=sizeof(ADS_POSTALADDRESS);
lpAdsDestValue->dwType = ADSTYPE_POSTALADDRESS;
for (i=0;i<6;i++) { if (lpAdsSrcValue->pPostalAddress->PostalAddress[i]) { lpAdsDestValue->pPostalAddress->PostalAddress[i] = (LPWSTR)lpBuffer; wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->pPostalAddress->PostalAddress[i]); dwLength = (wcslen(lpAdsSrcValue->pPostalAddress->PostalAddress[i]) + 1)*sizeof(WCHAR); lpBuffer += dwLength; } else { lpAdsDestValue->pPostalAddress->PostalAddress[i] = (LPWSTR)lpBuffer; *((WCHAR*)lpBuffer) = '\0'; lpBuffer += sizeof(WCHAR); } } return(lpBuffer); }
LPBYTE AdsTypeCopyTimestamp( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_TIMESTAMP){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_TIMESTAMP;
lpAdsDestValue->Timestamp.WholeSeconds = lpAdsSrcValue->Timestamp.WholeSeconds;
lpAdsDestValue->Timestamp.EventID = lpAdsSrcValue->Timestamp.EventID; return(lpBuffer); }
LPBYTE AdsTypeCopyBackLink( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_BACKLINK){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_BACKLINK;
lpAdsDestValue->BackLink.RemoteID = lpAdsSrcValue->BackLink.RemoteID;
lpAdsDestValue->BackLink.ObjectName = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->BackLink.ObjectName);
dwLength = (wcslen(lpAdsSrcValue->BackLink.ObjectName) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyTypedName( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_TYPEDNAME){ return(lpBuffer); }
if (lpAdsSrcValue->pTypedName == NULL) { return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_TYPEDNAME;
lpAdsDestValue->pTypedName = (PADS_TYPEDNAME)lpBuffer; lpBuffer+=sizeof(ADS_TYPEDNAME);
lpAdsDestValue->pTypedName->Interval = lpAdsSrcValue->pTypedName->Interval;
lpAdsDestValue->pTypedName->Level = lpAdsSrcValue->pTypedName->Level;
lpAdsDestValue->pTypedName->ObjectName = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->pTypedName->ObjectName);
dwLength = (wcslen(lpAdsSrcValue->pTypedName->ObjectName) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyHold( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_HOLD){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_HOLD;
lpAdsDestValue->Hold.Amount = lpAdsSrcValue->Hold.Amount;
lpAdsDestValue->Hold.ObjectName = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->Hold.ObjectName);
dwLength = (wcslen(lpAdsSrcValue->Hold.ObjectName) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyEmail( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_EMAIL){ return(lpBuffer); }
lpAdsDestValue->dwType = ADSTYPE_EMAIL;
lpAdsDestValue->Email.Type = lpAdsSrcValue->Email.Type;
lpAdsDestValue->Email.Address = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->Email.Address);
dwLength = (wcslen(lpAdsSrcValue->Email.Address) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
return(lpBuffer); }
LPBYTE AdsTypeCopyNetAddress( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { LPBYTE lpByteStream = NULL; DWORD dwNumBytes = 0; DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_NETADDRESS){ return(lpBuffer); } if (lpAdsSrcValue->pNetAddress == NULL) { return(lpBuffer); }
lpAdsDestValue->pNetAddress = (PADS_NETADDRESS)lpBuffer; lpBuffer+=sizeof(ADS_NETADDRESS);
lpAdsDestValue->dwType = ADSTYPE_NETADDRESS;
lpAdsDestValue->pNetAddress->AddressType = lpAdsSrcValue->pNetAddress->AddressType;
dwNumBytes = lpAdsSrcValue->pNetAddress->AddressLength;
memcpy( lpBuffer, lpAdsSrcValue->pNetAddress->Address, dwNumBytes );
lpAdsDestValue->pNetAddress->AddressLength = dwNumBytes;
lpAdsDestValue->pNetAddress->Address = lpBuffer;
lpBuffer += dwNumBytes;
return(lpBuffer); }
LPBYTE AdsTypeCopyFaxNumber( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { LPBYTE lpByteStream = NULL; DWORD dwNumBytes = 0; DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_FAXNUMBER){ return(lpBuffer); } if (lpAdsSrcValue->pFaxNumber == NULL) { return(lpBuffer); }
lpAdsDestValue->pFaxNumber = (PADS_FAXNUMBER)lpBuffer; lpBuffer+=sizeof(ADS_FAXNUMBER);
lpAdsDestValue->dwType = ADSTYPE_FAXNUMBER;
lpAdsDestValue->pFaxNumber->TelephoneNumber = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->pFaxNumber->TelephoneNumber);
dwLength = (wcslen(lpAdsSrcValue->pFaxNumber->TelephoneNumber) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
dwNumBytes = lpAdsSrcValue->pFaxNumber->NumberOfBits;
memcpy( lpBuffer, lpAdsSrcValue->pFaxNumber->Parameters, dwNumBytes );
lpAdsDestValue->pFaxNumber->NumberOfBits = dwNumBytes;
lpAdsDestValue->pFaxNumber->Parameters = lpBuffer;
lpBuffer += dwNumBytes;
return(lpBuffer); }
LPBYTE AdsTypeCopyReplicaPointer( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { LPBYTE lpByteStream = NULL; DWORD dwNumBytes = 0; DWORD dwLength = 0;
if(lpAdsSrcValue->dwType != ADSTYPE_REPLICAPOINTER){ return(lpBuffer); } if (lpAdsSrcValue->pReplicaPointer == NULL) { return(lpBuffer); }
lpAdsDestValue->pReplicaPointer = (PADS_REPLICAPOINTER)lpBuffer; lpBuffer+=sizeof(ADS_REPLICAPOINTER);
lpAdsDestValue->dwType = ADSTYPE_REPLICAPOINTER;
lpAdsDestValue->pReplicaPointer->ReplicaType = lpAdsSrcValue->pReplicaPointer->ReplicaType;
lpAdsDestValue->pReplicaPointer->ReplicaNumber = lpAdsSrcValue->pReplicaPointer->ReplicaNumber;
lpAdsDestValue->pReplicaPointer->Count = lpAdsSrcValue->pReplicaPointer->Count;
lpAdsDestValue->pReplicaPointer->ServerName = (LPWSTR)lpBuffer;
wcscpy((LPWSTR)lpBuffer, lpAdsSrcValue->pReplicaPointer->ServerName);
dwLength = (wcslen(lpAdsSrcValue->pReplicaPointer->ServerName) + 1)*sizeof(WCHAR);
lpBuffer += dwLength;
lpAdsDestValue->pReplicaPointer->ReplicaAddressHints = (ADS_NETADDRESS*)lpBuffer; lpBuffer += sizeof(ADS_NETADDRESS);
lpAdsDestValue->pReplicaPointer->ReplicaAddressHints->AddressType = lpAdsSrcValue->pReplicaPointer->ReplicaAddressHints->AddressType;
dwNumBytes = lpAdsSrcValue->pReplicaPointer->ReplicaAddressHints->AddressLength;
memcpy( lpBuffer, lpAdsSrcValue->pReplicaPointer->ReplicaAddressHints->Address, dwNumBytes );
lpAdsDestValue->pReplicaPointer->ReplicaAddressHints->AddressLength = dwNumBytes;
lpAdsDestValue->pReplicaPointer->ReplicaAddressHints->Address = lpBuffer;
lpBuffer += dwNumBytes; return(lpBuffer); } //
// END OF NEW CODE
//
LPBYTE AdsTypeCopy( PADSVALUE lpAdsSrcValue, PADSVALUE lpAdsDestValue, LPBYTE lpBuffer ) { switch (lpAdsSrcValue->dwType){
case ADSTYPE_DN_STRING: lpBuffer = AdsTypeCopyDNString( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_CASE_EXACT_STRING: lpBuffer = AdsTypeCopyCaseExactString( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_CASE_IGNORE_STRING: lpBuffer = AdsTypeCopyCaseIgnoreString( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_PRINTABLE_STRING: lpBuffer = AdsTypeCopyPrintableString( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_NUMERIC_STRING: lpBuffer = AdsTypeCopyNumericString( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_BOOLEAN: lpBuffer = AdsTypeCopyBoolean( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_INTEGER: lpBuffer = AdsTypeCopyInteger( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_OCTET_STRING: lpBuffer = AdsTypeCopyOctetString( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_UTC_TIME: lpBuffer = AdsTypeCopyTime( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_OBJECT_CLASS: lpBuffer = AdsTypeCopyObjectClass( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_CASEIGNORE_LIST: lpBuffer = AdsTypeCopyCaseIgnoreList( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_FAXNUMBER: lpBuffer = AdsTypeCopyFaxNumber( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_NETADDRESS: lpBuffer = AdsTypeCopyNetAddress( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_OCTET_LIST: lpBuffer = AdsTypeCopyOctetList( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_EMAIL: lpBuffer = AdsTypeCopyEmail( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_PATH: lpBuffer = AdsTypeCopyPath( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_REPLICAPOINTER: lpBuffer = AdsTypeCopyReplicaPointer( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_TIMESTAMP: lpBuffer = AdsTypeCopyTimestamp( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_POSTALADDRESS: lpBuffer = AdsTypeCopyPostalAddress( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break; case ADSTYPE_BACKLINK: lpBuffer = AdsTypeCopyBackLink( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_TYPEDNAME: lpBuffer = AdsTypeCopyTypedName( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
case ADSTYPE_HOLD: lpBuffer = AdsTypeCopyHold( lpAdsSrcValue, lpAdsDestValue, lpBuffer ); break;
default: break; }
return(lpBuffer); }
|