mirror of
https://github.com/winfsp/winfsp.git
synced 2025-07-03 09:22:57 -05:00
sys: IRP_MJ_WRITE: implementation
This commit is contained in:
@ -61,6 +61,10 @@ VOID FspAcquireFileForNtCreateSection(
|
||||
{
|
||||
FSP_ENTER_VOID(PAGED_CODE());
|
||||
|
||||
FSP_FILE_NODE *FileNode = FileObject->FsContext;
|
||||
|
||||
FspFileNodeAcquireExclusive(FileNode, Full);
|
||||
|
||||
FSP_LEAVE_VOID("FileObject=%p", FileObject);
|
||||
}
|
||||
|
||||
@ -69,6 +73,10 @@ VOID FspReleaseFileForNtCreateSection(
|
||||
{
|
||||
FSP_ENTER_VOID(PAGED_CODE());
|
||||
|
||||
FSP_FILE_NODE *FileNode = FileObject->FsContext;
|
||||
|
||||
FspFileNodeRelease(FileNode, Full);
|
||||
|
||||
FSP_LEAVE_VOID("FileObject=%p", FileObject);
|
||||
}
|
||||
|
||||
@ -80,7 +88,10 @@ NTSTATUS FspAcquireForModWrite(
|
||||
{
|
||||
FSP_ENTER(PAGED_CODE());
|
||||
|
||||
Result = STATUS_NOT_IMPLEMENTED;
|
||||
FSP_FILE_NODE *FileNode = FileObject->FsContext;
|
||||
|
||||
FspFileNodeAcquireExclusive(FileNode, Full);
|
||||
*ResourceToRelease = 0;
|
||||
|
||||
FSP_LEAVE("FileObject=%p", FileObject);
|
||||
}
|
||||
@ -92,7 +103,9 @@ NTSTATUS FspReleaseForModWrite(
|
||||
{
|
||||
FSP_ENTER(PAGED_CODE());
|
||||
|
||||
Result = STATUS_NOT_IMPLEMENTED;
|
||||
FSP_FILE_NODE *FileNode = FileObject->FsContext;
|
||||
|
||||
FspFileNodeRelease(FileNode, Full);
|
||||
|
||||
FSP_LEAVE("FileObject=%p", FileObject);
|
||||
}
|
||||
@ -103,7 +116,9 @@ NTSTATUS FspAcquireForCcFlush(
|
||||
{
|
||||
FSP_ENTER(PAGED_CODE());
|
||||
|
||||
Result = STATUS_NOT_IMPLEMENTED;
|
||||
FSP_FILE_NODE *FileNode = FileObject->FsContext;
|
||||
|
||||
FspFileNodeAcquireExclusive(FileNode, Full);
|
||||
|
||||
FSP_LEAVE("FileObject=%p", FileObject);
|
||||
}
|
||||
@ -114,7 +129,9 @@ NTSTATUS FspReleaseForCcFlush(
|
||||
{
|
||||
FSP_ENTER(PAGED_CODE());
|
||||
|
||||
Result = STATUS_NOT_IMPLEMENTED;
|
||||
FSP_FILE_NODE *FileNode = FileObject->FsContext;
|
||||
|
||||
FspFileNodeRelease(FileNode, Full);
|
||||
|
||||
FSP_LEAVE("FileObject=%p", FileObject);
|
||||
}
|
||||
@ -125,7 +142,9 @@ BOOLEAN FspAcquireForLazyWrite(
|
||||
{
|
||||
FSP_ENTER_BOOL(PAGED_CODE());
|
||||
|
||||
Result = FALSE;
|
||||
FSP_FILE_NODE *FileNode = Context;
|
||||
|
||||
FspFileNodeAcquireExclusive(FileNode, Full);
|
||||
|
||||
FSP_LEAVE_BOOL("Context=%p, Wait=%d", Context, Wait);
|
||||
}
|
||||
@ -135,6 +154,10 @@ VOID FspReleaseFromLazyWrite(
|
||||
{
|
||||
FSP_ENTER_VOID(PAGED_CODE());
|
||||
|
||||
FSP_FILE_NODE *FileNode = Context;
|
||||
|
||||
FspFileNodeRelease(FileNode, Full);
|
||||
|
||||
FSP_LEAVE_VOID("Context=%p", Context);
|
||||
}
|
||||
|
||||
@ -144,7 +167,9 @@ BOOLEAN FspAcquireForReadAhead(
|
||||
{
|
||||
FSP_ENTER_BOOL(PAGED_CODE());
|
||||
|
||||
Result = FALSE;
|
||||
FSP_FILE_NODE *FileNode = Context;
|
||||
|
||||
FspFileNodeAcquireShared(FileNode, Full);
|
||||
|
||||
FSP_LEAVE_BOOL("Context=%p, Wait=%d", Context, Wait);
|
||||
}
|
||||
@ -154,5 +179,9 @@ VOID FspReleaseFromReadAhead(
|
||||
{
|
||||
FSP_ENTER_VOID(PAGED_CODE());
|
||||
|
||||
FSP_FILE_NODE *FileNode = Context;
|
||||
|
||||
FspFileNodeRelease(FileNode, Full);
|
||||
|
||||
FSP_LEAVE_VOID("Context=%p", Context);
|
||||
}
|
||||
|
Reference in New Issue
Block a user