Windows: AFSTearDownExtents may experience active extents
[openafs.git] / src / WINNT / afsrdr / kernel / lib / Include / AFSCommon.h
index dca9a63..5ba3bd0 100644 (file)
@@ -47,6 +47,7 @@ extern "C"
 #include <ntifs.h>
 #include <wdmsec.h> // for IoCreateDeviceSecure
 #include <initguid.h>
+#include <ntintsafe.h>
 
 #include "AFSDefines.h"
 
@@ -219,6 +220,11 @@ AFSRetrieveVolumeInformation( IN GUID *AuthGroup,
                               OUT AFSVolumeInfoCB *VolumeInformation);
 
 NTSTATUS
+AFSRetrieveVolumeSizeInformation( IN GUID *AuthGroup,
+                                  IN AFSFileID *FileID,
+                                  OUT AFSVolumeSizeInfoCB *VolumeSizeInformation);
+
+NTSTATUS
 AFSNotifyPipeTransceive( IN AFSCcb *Ccb,
                          IN ULONG InputLength,
                          IN ULONG OutputLength,
@@ -402,7 +408,7 @@ AFSMarkDirty( IN AFSFcb *pFcb,
               IN LARGE_INTEGER *StartingByte,
               IN BOOLEAN DerefExtents);
 
-BOOLEAN
+VOID
 AFSTearDownFcbExtents( IN AFSFcb *Fcb,
                        IN GUID *AuthGroup);
 
@@ -430,6 +436,10 @@ AFSRemoveEntryDirtyList( IN AFSFcb *Fcb,
 AFSExtent *
 ExtentFor( PLIST_ENTRY le, ULONG SkipList );
 
+ULONG
+AFSConstructCleanByteRangeList( AFSFcb * pFcb,
+                                AFSByteRange ** pByteRangeList);
+
 #if GEN_MD5
 void
 AFSSetupMD5Hash( IN AFSFcb *Fcb,
@@ -515,7 +525,7 @@ NTSTATUS
 AFSInitCcb( IN OUT AFSCcb **Ccb);
 
 void
-AFSRemoveFcb( IN AFSFcb *Fcb);
+AFSRemoveFcb( IN AFSFcb **Fcb);
 
 NTSTATUS
 AFSRemoveCcb( IN AFSFcb *Fcb,
@@ -1033,7 +1043,8 @@ AFSSetQuota( IN PDEVICE_OBJECT DeviceObject,
 //
 
 ULONG
-AFSExceptionFilter( IN ULONG Code,
+AFSExceptionFilter( IN CHAR *FunctionString,
+                    IN ULONG Code,
                     IN PEXCEPTION_POINTERS ExceptPtrs);
 
 BOOLEAN
@@ -1154,6 +1165,9 @@ NTSTATUS
 AFSInvalidateVolume( IN AFSVolumeCB *VolumeCB,
                      IN ULONG Reason);
 
+VOID
+AFSInvalidateAllVolumes( VOID);
+
 NTSTATUS
 AFSVerifyEntry( IN GUID *AuthGroup,
                 IN AFSDirectoryCB *DirectoryCB);
@@ -1181,7 +1195,6 @@ AFSUpdateMetaData( IN AFSDirectoryCB *DirEntry,
 NTSTATUS
 AFSValidateEntry( IN AFSDirectoryCB *DirEntry,
                   IN GUID *AuthGroup,
-                  IN BOOLEAN PurgeContent,
                   IN BOOLEAN FastCall);
 
 AFSDirectoryCB *
@@ -1240,10 +1253,6 @@ NTSTATUS
 AFSInsertNextElement( IN AFSNameArrayHdr *NameArray,
                       IN AFSDirectoryCB *DirEntry);
 
-void
-AFSReplaceCurrentElement( IN AFSNameArrayHdr *NameArray,
-                          IN AFSDirectoryCB *DirectoryCB);
-
 AFSDirectoryCB *
 AFSBackupEntry( IN AFSNameArrayHdr *NameArray);