typedef
void
-(*PAFSExFreePool)( IN void *Pointer);
+(*PAFSExFreePoolWithTag)( IN void *Pointer, IN ULONG Tag);
typedef
void
PAFSExAllocatePoolWithTag AFSExAllocatePoolWithTag;
- PAFSExFreePool AFSExFreePool;
+ PAFSExFreePoolWithTag AFSExFreePoolWithTag;
PAFSDumpTraceFiles AFSDumpTraceFiles;
}
void
-AFSExFreePool( IN void *Buffer)
+AFSExFreePoolWithTag( IN void *Buffer, IN ULONG Tag)
{
AFSDeviceExt *pControlDevExt = NULL;
pControlDevExt = (AFSDeviceExt *)AFSDeviceObject->DeviceExtension;
}
- ExFreePool( Buffer);
+ if ( Tag)
+ {
+
+ ExFreePoolWithTag( Buffer, Tag);
+ }
+ else
+ {
+
+ ExFreePool( Buffer);
+ }
if ( pControlDevExt)
{
stInitLib.AFSExAllocatePoolWithTag = AFSExAllocatePoolWithTag;
- stInitLib.AFSExFreePool = AFSExFreePool;
+ stInitLib.AFSExFreePoolWithTag = AFSExFreePoolWithTag;
stInitLib.AFSDumpTraceFiles = AFSDumpTraceFiles;
// The non paged region
//
- AFSExFreePool( pFcb->NPFcb);
+ AFSExFreePoolWithTag( pFcb->NPFcb, AFS_FCB_NP_ALLOCATION_TAG);
}
//
// And the Fcb itself
//
- AFSExFreePool( pFcb);
+ AFSExFreePoolWithTag( pFcb, AFS_FCB_ALLOCATION_TAG);
return;
}
IN ULONG Tag);
void
-AFSExFreePool( IN void *Buffer);
+AFSExFreePoolWithTag( IN void *Buffer, IN ULONG Tag);
NTSTATUS
AFSShutdownRedirector( void);
if( pResultCB != NULL)
{
- AFSExFreePool( pResultCB);
+ AFSExFreePoolWithTag( pResultCB, AFS_GENERIC_MEMORY_32_TAG);
}
if( pFileObject != NULL)
if( pBuffer != NULL)
{
- AFSExFreePool( pBuffer);
+ AFSExFreePoolWithTag( pBuffer, AFS_DIR_BUFFER_TAG);
}
//
if( pBuffer != NULL)
{
- AFSExFreePool( pBuffer);
+ AFSExFreePoolWithTag( pBuffer, AFS_DIR_BUFFER_TAG);
}
}
if( pResultCB != NULL)
{
- AFSExFreePool( pResultCB);
+ AFSExFreePoolWithTag( pResultCB, AFS_GENERIC_MEMORY_1_TAG);
}
}
if( pUpdateResultCB != NULL)
{
- AFSExFreePool( pUpdateResultCB);
+ AFSExFreePoolWithTag( pUpdateResultCB, AFS_UPDATE_RESULT_TAG);
}
}
if( pRenameCB != NULL)
{
- AFSExFreePool( pRenameCB);
+ AFSExFreePoolWithTag( pRenameCB, AFS_RENAME_REQUEST_TAG);
}
}
if( pEvalResultCB != NULL)
{
- AFSExFreePool( pEvalResultCB);
+ AFSExFreePoolWithTag( pEvalResultCB, AFS_GENERIC_MEMORY_30_TAG);
}
if( !NT_SUCCESS( ntStatus))
if( pDirEnumCB != NULL)
{
- AFSExFreePool( pDirEnumCB);
+ AFSExFreePoolWithTag( pDirEnumCB, AFS_GENERIC_MEMORY_2_TAG);
}
*DirEnumEntry = NULL;
if( pEvalResultCB != NULL)
{
- AFSExFreePool( pEvalResultCB);
+ AFSExFreePoolWithTag( pEvalResultCB, AFS_GENERIC_MEMORY_31_TAG);
}
if( !NT_SUCCESS( ntStatus))
if( pDirEnumCB != NULL)
{
- AFSExFreePool( pDirEnumCB);
+ AFSExFreePoolWithTag( pDirEnumCB, AFS_GENERIC_MEMORY_3_TAG);
}
*DirEnumEntry = NULL;
if( pIoRequest != NULL)
{
- AFSExFreePool( pIoRequest);
+ AFSExFreePoolWithTag( pIoRequest, AFS_GENERIC_MEMORY_4_TAG);
}
}
if( pInfoRequest != NULL)
{
- AFSExFreePool( pInfoRequest);
+ AFSExFreePoolWithTag( pInfoRequest, AFS_GENERIC_MEMORY_5_TAG);
}
}
if( uniSubstitutedPathName.Buffer != NULL)
{
- AFSExFreePool( uniSubstitutedPathName.Buffer);
+ AFSExFreePoolWithTag( uniSubstitutedPathName.Buffer, 0);
ClearFlag( ulParseFlags, AFS_PARSE_FLAG_FREE_FILE_BUFFER);
}
if( BooleanFlagOn( ulParseFlags, AFS_PARSE_FLAG_FREE_FILE_BUFFER))
{
- AFSExFreePool( uniRootFileName.Buffer);
+ AFSExFreePoolWithTag( uniRootFileName.Buffer, 0);
}
if( bReleaseVolume)
PAFSExAllocatePoolWithTag AFSExAllocatePoolWithTag = NULL;
-PAFSExFreePool AFSExFreePool = NULL;
+PAFSExFreePoolWithTag AFSExFreePoolWithTag = NULL;
PAFSDumpTraceFiles AFSDumpTraceFilesFnc = AFSDumpTraceFiles_Default;
if( Ccb->DirectorySnapshot != NULL)
{
- AFSExFreePool( Ccb->DirectorySnapshot);
+ AFSExFreePoolWithTag( Ccb->DirectorySnapshot, AFS_DIR_SNAPSHOT_TAG);
Ccb->DirectorySnapshot = NULL;
}
if( Ccb->DirectorySnapshot != NULL)
{
- AFSExFreePool( Ccb->DirectorySnapshot);
+ AFSExFreePoolWithTag( Ccb->DirectorySnapshot, AFS_DIR_SNAPSHOT_TAG);
Ccb->DirectorySnapshot = NULL;
}
if( Ccb->NotifyMask.Buffer != NULL)
{
- AFSExFreePool( Ccb->NotifyMask.Buffer);
+ AFSExFreePoolWithTag( Ccb->NotifyMask.Buffer, AFS_GENERIC_MEMORY_7_TAG);
Ccb->NotifyMask.Buffer = NULL;
}
if( uniName.Buffer != NULL)
{
- AFSExFreePool( uniName.Buffer);
+ AFSExFreePoolWithTag( uniName.Buffer, AFS_GENERIC_MEMORY_8_TAG);
}
}
FALSE);
}
- AFSExFreePool( pExtent);
+ AFSExFreePoolWithTag( pExtent, AFS_EXTENT_TAG);
}
//
if (pRelease)
{
- AFSExFreePool( pRelease);
+ AFSExFreePoolWithTag( pRelease, AFS_EXTENT_RELEASE_TAG);
}
}
}
Irp->AssociatedIrp.SystemBuffer != pResult)
{
- AFSExFreePool(pResult);
+ AFSExFreePoolWithTag(pResult, AFS_EXTENTS_RESULT_TAG);
}
if (NT_SUCCESS(ntStatus))
if (pRelease)
{
- AFSExFreePool( pRelease);
+ AFSExFreePoolWithTag( pRelease, AFS_EXTENT_RELEASE_TAG);
}
}
if (pRelease)
{
- AFSExFreePool( pRelease);
+ AFSExFreePoolWithTag( pRelease, AFS_EXTENT_RELEASE_TAG);
}
}
if (pRelease)
{
- AFSExFreePool( pRelease);
+ AFSExFreePoolWithTag( pRelease, AFS_EXTENT_RELEASE_TAG);
}
}
if( pExtentBuffer != NULL)
{
- AFSExFreePool( pExtentBuffer);
+ AFSExFreePoolWithTag( pExtentBuffer, AFS_GENERIC_MEMORY_9_TAG);
}
}
ExDeleteResourceLite( &pNPFcb->Resource);
- AFSExFreePool( pNPFcb);
+ AFSExFreePoolWithTag( pNPFcb, AFS_FCB_NP_ALLOCATION_TAG);
}
- AFSExFreePool( pFcb);
+ AFSExFreePoolWithTag( pFcb, AFS_FCB_ALLOCATION_TAG);
}
}
}
pNonPagedVcb = (AFSNonPagedVolumeCB *)AFSExAllocatePoolWithTag( NonPagedPool,
sizeof( AFSNonPagedVolumeCB),
- AFS_VCB_ALLOCATION_TAG);
+ AFS_VCB_NP_ALLOCATION_TAG);
if( pNonPagedVcb == NULL)
{
pNonPagedObject = (AFSNonPagedObjectInfoCB *)AFSExAllocatePoolWithTag( NonPagedPool,
sizeof( AFSNonPagedObjectInfoCB),
- AFS_VCB_ALLOCATION_TAG);
+ AFS_NP_OBJECT_INFO_TAG);
if( pNonPagedObject == NULL)
{
ExDeleteResourceLite( &pNonPagedVcb->ObjectInfoTreeLock);
- AFSExFreePool( pNonPagedVcb);
+ AFSExFreePoolWithTag( pNonPagedVcb, AFS_VCB_NP_ALLOCATION_TAG);
}
if( pNonPagedObject != NULL)
ExDeleteResourceLite( &pNonPagedObject->DirectoryNodeHdrLock);
- AFSExFreePool( pNonPagedObject);
+ AFSExFreePoolWithTag( pNonPagedObject, AFS_NP_OBJECT_INFO_TAG);
}
if( pVolumeCB != NULL)
if( pVolumeCB->DirectoryCB != NULL)
{
- AFSExFreePool( pVolumeCB->DirectoryCB);
+ AFSExFreePoolWithTag( pVolumeCB->DirectoryCB, AFS_DIR_ENTRY_TAG);
}
- AFSExFreePool( pVolumeCB);
+ AFSExFreePoolWithTag( pVolumeCB, AFS_VCB_ALLOCATION_TAG);
}
if( pNonPagedDirEntry != NULL)
ExDeleteResourceLite( &pNonPagedDirEntry->Lock);
- AFSExFreePool( pNonPagedDirEntry);
+ AFSExFreePoolWithTag( pNonPagedDirEntry, AFS_DIR_ENTRY_NP_TAG);
}
}
AFSDeleteObjectInfo( VolumeCB->ObjectInformation.Specific.Directory.PIOCtlDirectoryCB->ObjectInformation);
- AFSExFreePool( VolumeCB->ObjectInformation.Specific.Directory.PIOCtlDirectoryCB);
+ AFSExFreePoolWithTag( VolumeCB->ObjectInformation.Specific.Directory.PIOCtlDirectoryCB, AFS_DIR_ENTRY_TAG);
}
if( BooleanFlagOn( VolumeCB->ObjectInformation.Flags, AFS_OBJECT_HELD_IN_SERVICE))
ExDeleteResourceLite( &VolumeCB->NonPagedVcb->ObjectInfoTreeLock);
- AFSExFreePool( VolumeCB->NonPagedVcb);
+ AFSExFreePoolWithTag( VolumeCB->NonPagedVcb, AFS_VCB_NP_ALLOCATION_TAG);
}
if( VolumeCB->ObjectInformation.NonPagedInfo != NULL)
ExDeleteResourceLite( &VolumeCB->ObjectInformation.NonPagedInfo->DirectoryNodeHdrLock);
- AFSExFreePool( VolumeCB->ObjectInformation.NonPagedInfo);
+ AFSExFreePoolWithTag( VolumeCB->ObjectInformation.NonPagedInfo, AFS_NP_OBJECT_INFO_TAG);
}
if( VolumeCB->DirectoryCB != NULL)
ExDeleteResourceLite( &VolumeCB->DirectoryCB->NonPaged->Lock);
- AFSExFreePool( VolumeCB->DirectoryCB->NonPaged);
+ AFSExFreePoolWithTag( VolumeCB->DirectoryCB->NonPaged, AFS_DIR_ENTRY_NP_TAG);
}
- AFSExFreePool( VolumeCB->DirectoryCB);
+ AFSExFreePoolWithTag( VolumeCB->DirectoryCB, AFS_DIR_ENTRY_TAG);
}
- AFSExFreePool( VolumeCB);
+ AFSExFreePoolWithTag( VolumeCB, AFS_VCB_ALLOCATION_TAG);
}
return ntStatus;
// The non paged region
//
- AFSExFreePool( RootFcb->NPFcb);
+ AFSExFreePoolWithTag( RootFcb->NPFcb, AFS_FCB_NP_ALLOCATION_TAG);
}
//
// And the Fcb itself
//
- AFSExFreePool( RootFcb);
+ AFSExFreePoolWithTag( RootFcb, AFS_FCB_ALLOCATION_TAG);
return;
}
// The non paged region
//
- AFSExFreePool( pFcb->NPFcb);
+ AFSExFreePoolWithTag( pFcb->NPFcb, AFS_FCB_NP_ALLOCATION_TAG);
//
// And the Fcb itself, which includes the name
//
- AFSExFreePool( pFcb);
+ AFSExFreePoolWithTag( pFcb, AFS_FCB_ALLOCATION_TAG);
return;
}
if ( pCcb->NPCcb != NULL)
{
- AFSExFreePool( pCcb->NPCcb);
+ AFSExFreePoolWithTag( pCcb->NPCcb, AFS_CCB_NP_ALLOCATION_TAG);
}
- AFSExFreePool( pCcb);
+ AFSExFreePoolWithTag( pCcb, AFS_CCB_ALLOCATION_TAG);
}
*Ccb = NULL;
if( Ccb->MaskName.Buffer != NULL)
{
- AFSExFreePool( Ccb->MaskName.Buffer);
+ AFSExFreePoolWithTag( Ccb->MaskName.Buffer, AFS_GENERIC_MEMORY_6_TAG);
}
if( BooleanFlagOn( Ccb->Flags, CCB_FLAG_FREE_FULL_PATHNAME))
{
- AFSExFreePool( Ccb->FullFileName.Buffer);
+ AFSExFreePoolWithTag( Ccb->FullFileName.Buffer, 0);
}
//
if( Ccb->DirectorySnapshot != NULL)
{
- AFSExFreePool( Ccb->DirectorySnapshot);
+ AFSExFreePoolWithTag( Ccb->DirectorySnapshot, AFS_DIR_SNAPSHOT_TAG);
Ccb->DirectorySnapshot = NULL;
}
if( Ccb->NotifyMask.Buffer != NULL)
{
- AFSExFreePool( Ccb->NotifyMask.Buffer);
+ AFSExFreePoolWithTag( Ccb->NotifyMask.Buffer, AFS_GENERIC_MEMORY_7_TAG);
}
AFSReleaseResource( &Ccb->NPCcb->CcbLock);
ExDeleteResourceLite( &Ccb->NPCcb->CcbLock);
- AFSExFreePool( Ccb->NPCcb);
+ AFSExFreePoolWithTag( Ccb->NPCcb, AFS_CCB_NP_ALLOCATION_TAG);
- AFSExFreePool( Ccb);
+ AFSExFreePoolWithTag( Ccb, AFS_CCB_ALLOCATION_TAG);
return ntStatus;
}
ExDeleteResourceLite( &pNonPagedDirEntry->Lock);
- AFSExFreePool( pNonPagedDirEntry);
+ AFSExFreePoolWithTag( pNonPagedDirEntry, AFS_DIR_ENTRY_NP_TAG);
}
if( pDirNode != NULL)
{
- AFSExFreePool( pDirNode);
+ AFSExFreePoolWithTag( pDirNode, AFS_DIR_ENTRY_TAG);
pDirNode = NULL;
}
if( pDirEntry != NULL)
{
- AFSExFreePool( pDirEntry);
+ AFSExFreePoolWithTag( pDirEntry, AFS_GENERIC_MEMORY_2_TAG);
}
}
if( pDirEntry != NULL)
{
- AFSExFreePool( pDirEntry);
+ AFSExFreePoolWithTag( pDirEntry, AFS_GENERIC_MEMORY_2_TAG);
}
}
if( FreePathName)
{
- AFSExFreePool( FullPathName->Buffer);
+ AFSExFreePoolWithTag( FullPathName->Buffer, 0);
}
*FullPathName = uniPathName;
if( pDirEnumEntry != NULL)
{
- AFSExFreePool( pDirEnumEntry);
+ AFSExFreePoolWithTag( pDirEnumEntry, AFS_GENERIC_MEMORY_2_TAG);
}
}
if( BooleanFlagOn( DirEntry->Flags, AFS_DIR_RELEASE_TARGET_NAME_BUFFER) &&
DirEntry->NameInformation.TargetName.Buffer != NULL)
{
- AFSExFreePool( DirEntry->NameInformation.TargetName.Buffer);
+ AFSExFreePoolWithTag( DirEntry->NameInformation.TargetName.Buffer, AFS_NAME_BUFFER_FIVE_TAG);
}
ClearFlag( DirEntry->Flags, AFS_DIR_RELEASE_TARGET_NAME_BUFFER);
if( pDirEnumEntry != NULL)
{
- AFSExFreePool( pDirEnumEntry);
+ AFSExFreePoolWithTag( pDirEnumEntry, AFS_GENERIC_MEMORY_2_TAG);
}
}
pDirGlobalDirNode = (AFSDirectoryCB *)pDirGlobalDirNode->ListEntry.fLink;
}
- AFSExFreePool( uniFullName.Buffer);
+ AFSExFreePoolWithTag( uniFullName.Buffer, 0);
try_exit:
if( BooleanFlagOn( *Flags, AFS_DIR_RELEASE_TARGET_NAME_BUFFER))
{
- AFSExFreePool( TargetName->Buffer);
+ AFSExFreePoolWithTag( TargetName->Buffer, AFS_NAME_BUFFER_FIVE_TAG);
}
TargetName->MaximumLength = NameLength;
lCount);
}
- AFSExFreePool( NameArray);
+ AFSExFreePoolWithTag( NameArray, AFS_NAME_ARRAY_TAG);
}
return ntStatus;
if ( pDirNode != NULL)
{
- AFSExFreePool( pDirNode);
+ AFSExFreePoolWithTag( pDirNode, AFS_DIR_ENTRY_TAG);
}
if ( pObjectInfoCB != NULL)
if( pDirEntry != NULL)
{
- AFSExFreePool( pDirEntry);
+ AFSExFreePoolWithTag( pDirEntry, AFS_GENERIC_MEMORY_2_TAG);
}
if( pVolumeCB != NULL)
pwchBuffer != (WCHAR *)((char *)uniFullPathName.Buffer - ulNameDifference))
{
- AFSExFreePool( uniFullPathName.Buffer);
+ AFSExFreePoolWithTag( uniFullPathName.Buffer, 0);
}
- AFSExFreePool( pwchBuffer);
+ AFSExFreePoolWithTag( pwchBuffer, 0);
}
}
if( pObjectInfo->NonPagedInfo == NULL)
{
- AFSExFreePool( pObjectInfo);
+ AFSExFreePoolWithTag( pObjectInfo, AFS_OBJECT_INFO_TAG);
try_return( pObjectInfo = NULL);
}
ExDeleteResourceLite( &ObjectInfo->NonPagedInfo->DirectoryNodeHdrLock);
- AFSExFreePool( ObjectInfo->NonPagedInfo);
+ AFSExFreePoolWithTag( ObjectInfo->NonPagedInfo, AFS_NP_OBJECT_INFO_TAG);
- AFSExFreePool( ObjectInfo);
+ AFSExFreePoolWithTag( ObjectInfo, AFS_OBJECT_INFO_TAG);
return;
}
if( pDirEntry != NULL)
{
- AFSExFreePool( pDirEntry);
+ AFSExFreePoolWithTag( pDirEntry, AFS_GENERIC_MEMORY_2_TAG);
}
if( pVolumeCB != NULL)
pwchBuffer != (WCHAR *)((char *)uniFullPathName.Buffer - ulNameDifference))
{
- AFSExFreePool( uniFullPathName.Buffer);
+ AFSExFreePoolWithTag( uniFullPathName.Buffer, 0);
}
- AFSExFreePool( pwchBuffer);
+ AFSExFreePoolWithTag( pwchBuffer, 0);
}
}
if( BooleanFlagOn( DirectoryCB->Flags, AFS_DIR_RELEASE_NAME_BUFFER))
{
- AFSExFreePool( DirectoryCB->NameInformation.FileName.Buffer);
+ AFSExFreePoolWithTag( DirectoryCB->NameInformation.FileName.Buffer, 0);
ClearFlag( DirectoryCB->Flags, AFS_DIR_RELEASE_NAME_BUFFER);
AFSExAllocatePoolWithTag = LibraryInit->AFSExAllocatePoolWithTag;
- AFSExFreePool = LibraryInit->AFSExFreePool;
+ AFSExFreePoolWithTag = LibraryInit->AFSExFreePoolWithTag;
AFSDumpTraceFilesFnc = LibraryInit->AFSDumpTraceFiles;
else
{
- AFSExFreePool( Gather);
+ AFSExFreePoolWithTag( Gather, AFS_GATHER_TAG);
}
}
}
if( pTmpBuffer != NULL)
{
- AFSExFreePool( pTmpBuffer);
+ AFSExFreePoolWithTag( pTmpBuffer, 0);
}
AFSReleaseResource( &pDirEntry->NonPaged->Lock);
if( pTmpBuffer != NULL)
{
- AFSExFreePool( pTmpBuffer);
+ AFSExFreePoolWithTag( pTmpBuffer, 0);
}
AFSReleaseResource( &pDirEntry->NonPaged->Lock);
uniSearchName.Buffer != NULL)
{
- AFSExFreePool( uniSearchName.Buffer);
+ AFSExFreePoolWithTag( uniSearchName.Buffer, 0);
bSubstituteName = FALSE;
if( bSubstituteName)
{
- AFSExFreePool( uniSearchName.Buffer);
+ AFSExFreePoolWithTag( uniSearchName.Buffer, 0);
uniSearchName = uniComponentName;
if( RootPathName->Buffer != uniFullPathName.Buffer)
{
- AFSExFreePool( uniFullPathName.Buffer);
+ AFSExFreePoolWithTag( uniFullPathName.Buffer, 0);
}
}
else
uniSearchName.Buffer != NULL)
{
- AFSExFreePool( uniSearchName.Buffer);
+ AFSExFreePoolWithTag( uniSearchName.Buffer, 0);
}
}
if( BooleanFlagOn( DirEntry->Flags, AFS_DIR_RELEASE_NAME_BUFFER))
{
- AFSExFreePool( DirEntry->NameInformation.FileName.Buffer);
+ AFSExFreePoolWithTag( DirEntry->NameInformation.FileName.Buffer, 0);
}
if( BooleanFlagOn( DirEntry->Flags, AFS_DIR_RELEASE_TARGET_NAME_BUFFER))
{
- AFSExFreePool( DirEntry->NameInformation.TargetName.Buffer);
+ AFSExFreePoolWithTag( DirEntry->NameInformation.TargetName.Buffer, 0);
}
//
ExDeleteResourceLite( &DirEntry->NonPaged->Lock);
- AFSExFreePool( DirEntry->NonPaged);
+ AFSExFreePoolWithTag( DirEntry->NonPaged, AFS_DIR_ENTRY_NP_TAG);
//
// Free up the dir entry
//
- AFSExFreePool( DirEntry);
+ AFSExFreePoolWithTag( DirEntry, AFS_DIR_ENTRY_TAG);
}
return ntStatus;
"AFSParseName (%08lX) Failed to initialize name array\n",
Irp);
- AFSExFreePool( uniFullName.Buffer);
+ AFSExFreePoolWithTag( uniFullName.Buffer, 0);
try_return( ntStatus = STATUS_INSUFFICIENT_RESOURCES);
}
"AFSParseName (%08lX) Failed to initialize name array\n",
Irp);
- AFSExFreePool( uniFullName.Buffer);
+ AFSExFreePoolWithTag( uniFullName.Buffer, 0);
try_return( ntStatus = STATUS_INSUFFICIENT_RESOURCES);
}
"AFSParseName (%08lX) Failed to populate name array\n",
Irp);
- AFSExFreePool( uniFullName.Buffer);
+ AFSExFreePoolWithTag( uniFullName.Buffer, 0);
try_return( ntStatus);
}
if( pDirEnumEntry != NULL)
{
- AFSExFreePool( pDirEnumEntry);
+ AFSExFreePoolWithTag( pDirEnumEntry, AFS_GENERIC_MEMORY_31_TAG);
}
}
if( pDirEntry)
{
- AFSExFreePool( pDirEntry);
+ AFSExFreePoolWithTag( pDirEntry, AFS_GENERIC_MEMORY_2_TAG);
}
}
if( FileObject->FileName.Buffer != NULL)
{
- AFSExFreePool( FileObject->FileName.Buffer);
+ AFSExFreePoolWithTag( FileObject->FileName.Buffer, 0);
}
FileObject->FileName = uniReparseName;
if ( pDirEntry)
{
- AFSExFreePool( pDirEntry);
+ AFSExFreePoolWithTag( pDirEntry, AFS_GENERIC_MEMORY_2_TAG);
}
}
if( pConnection->Comment.Buffer != NULL)
{
- AFSExFreePool( pConnection->Comment.Buffer);
+ AFSExFreePoolWithTag( pConnection->Comment.Buffer, 0);
}
ConnectionResult->LocalName = pConnection->LocalName;
- AFSExFreePool( pConnection);
+ AFSExFreePoolWithTag( pConnection, AFS_PROVIDER_CB);
ConnectionResult->Status = WN_SUCCESS;
if( uniRemoteName.Buffer != NULL)
{
- AFSExFreePool( uniRemoteName.Buffer);
+ AFSExFreePoolWithTag( uniRemoteName.Buffer, 0);
}
}
// Don't need this
//
- AFSExFreePool( pDirEnumEntry);
+ AFSExFreePoolWithTag( pDirEnumEntry, AFS_GENERIC_MEMORY_3_TAG);
//
// The share name is valid
AFSReleaseResource( AFSGlobalRoot->ObjectInformation.Specific.Directory.DirectoryNodeHdr.TreeLock);
- AFSExFreePool( uniFullName.Buffer);
+ AFSExFreePoolWithTag( uniFullName.Buffer, 0);
AFSDbgLogMsg( AFS_SUBSYSTEM_LOCK_PROCESSING,
AFS_TRACE_LEVEL_VERBOSE,
if ( uniRemainingPathLocal.Buffer )
{
- AFSExFreePool( uniRemainingPathLocal.Buffer);
+ AFSExFreePoolWithTag( uniRemainingPathLocal.Buffer, 0);
}
}
if (pGatherIo)
{
- AFSExFreePool(pGatherIo);
+ AFSExFreePoolWithTag(pGatherIo, AFS_GATHER_TAG);
}
if (NULL != pIoRuns && stIoRuns != pIoRuns)
{
- AFSExFreePool(pIoRuns);
+ AFSExFreePoolWithTag(pIoRuns, AFS_IO_RUN_TAG);
}
if (bCompleteIrp)
ExDeleteResourceLite( &pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB->NonPaged->Lock);
- AFSExFreePool( pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB->NonPaged);
+ AFSExFreePoolWithTag( pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB->NonPaged, AFS_DIR_ENTRY_NP_TAG);
- AFSExFreePool( pCurrentObject->Specific.Directory.PIOCtlDirectoryCB);
+ AFSExFreePoolWithTag( pCurrentObject->Specific.Directory.PIOCtlDirectoryCB, AFS_DIR_ENTRY_TAG);
}
AFSDbgLogMsg( AFS_SUBSYSTEM_CLEANUP_PROCESSING,
ExDeleteResourceLite( &pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB->NonPaged->Lock);
- AFSExFreePool( pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB->NonPaged);
+ AFSExFreePoolWithTag( pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB->NonPaged, AFS_DIR_ENTRY_NP_TAG);
- AFSExFreePool( pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB);
+ AFSExFreePoolWithTag( pCurrentChildObject->Specific.Directory.PIOCtlDirectoryCB, AFS_DIR_ENTRY_TAG);
}
AFSDbgLogMsg( AFS_SUBSYSTEM_CLEANUP_PROCESSING,
if( pGatherIo)
{
- AFSExFreePool(pGatherIo);
+ AFSExFreePoolWithTag(pGatherIo, AFS_GATHER_TAG);
}
if( NULL != pIoRuns &&
stIoRuns != pIoRuns)
{
- AFSExFreePool(pIoRuns);
+ AFSExFreePoolWithTag(pIoRuns, AFS_IO_RUN_TAG);
}
if( bCompleteIrp)
if( pIoRequest != NULL)
{
- AFSExFreePool( pIoRequest);
+ AFSExFreePoolWithTag( pIoRequest, AFS_GENERIC_MEMORY_14_TAG);
}
}
extern PAFSExAllocatePoolWithTag AFSExAllocatePoolWithTag;
-extern PAFSExFreePool AFSExFreePool;
+extern PAFSExFreePoolWithTag AFSExFreePoolWithTag;
extern PAFSRetrieveAuthGroup AFSRetrieveAuthGroupFnc;