{
FCB_TYPE Type;
PNPFS_VCB Vcb;
+ volatile LONG RefCount;
UNICODE_STRING PipeName;
LIST_ENTRY PipeListEntry;
KMUTEX CcbListLock;
LIST_ENTRY CcbListEntry;
CCB_TYPE Type;
PNPFS_FCB Fcb;
-
- PFILE_OBJECT FileObject;
+ PFILE_OBJECT FileObject;
struct _NPFS_CCB* OtherSide;
struct ETHREAD *Thread;
ULONG PipeState;
ULONG ReadDataAvailable;
ULONG WriteQuotaAvailable;
- ULONG RefCount;
+ volatile LONG RefCount;
LIST_ENTRY ReadRequestListHead;
DriverEntry(PDRIVER_OBJECT DriverObject,
PUNICODE_STRING RegistryPath);
+VOID
+NpfsDereferenceFcb(PNPFS_FCB Fcb);
+
PNPFS_FCB
NpfsFindPipe(PNPFS_VCB Vcb,
PUNICODE_STRING PipeName);