FsRtlCheckOplock
NTSTATUS __stdcall FsRtlCheckOplock(
POPLOCK Oplock,
PIRP Irp,
PVOID Context,
POPLOCK_WAIT_COMPLETE_ROUTINE CompletionRoutine,
POPLOCK_FS_PREPOST_IRP PostIrpRoutine){
unsigned int v9;
_IO_STACK_LOCATION *CurrentStackLocation;
unsigned int Options;
v9 = 0;
FsRtlpOplockStoreKeyForDeleteOperation(Oplock, Irp, 0i64);
if( !*Oplock && (!Irp || Irp->Tail.CurrentStackLocation->MajorFunction) )
return 0;
CurrentStackLocation = Irp->Tail.CurrentStackLocation;
if( !CurrentStackLocation->MajorFunction )
{
Options = CurrentStackLocation->Parameters.Options;
v9 = (Options >> 8) & 1;
if( (Options & 0x10000) != 0 )
v9 |= 0x10000000u;
}
return FsRtlCheckOplockEx2(
Oplock,
Irp,
v9,
0,
(__int64)Context,
(__int64)CompletionRoutine,
(__int64)PostIrpRoutine,
0i64,
0i64,
0i64);
}Referenced by:
No references.