FsRtlFindExtraCreateParameter
NTSTATUS __stdcall FsRtlFindExtraCreateParameter(
PECP_LIST EcpList,
LPCGUID EcpType,
PVOID *EcpContext,
ULONG *EcpContextSize){
_LIST_ENTRY *Flink;
char *v6;
if( EcpContext )
*EcpContext = 0i64;
if( EcpContextSize )
*EcpContextSize = 0;
Flink = EcpList->EcpList.Flink;
if( Flink == &EcpList->EcpList )
return -1073741275;
while( 1 )
{
v6 = (char *)Flink[1].Flink - *(_QWORD *)&EcpType->Data1;
if( !v6 )
v6 = (char *)Flink[1].Blink - *(_QWORD *)EcpType->Data4;
if( !v6 )
break;
Flink = Flink->Flink;
if( Flink == &EcpList->EcpList )
return -1073741275;
}
LODWORD(Flink[2].Blink) |= 4u;
if( EcpContext )
*EcpContext = &Flink[4];
if( EcpContextSize )
*EcpContextSize = HIDWORD(Flink[2].Blink) - 72;
return 0;
}Referenced by:
FsRtlCheckOplockEx2
FsRtlpAttachOplockKey
IopCheckAndUpdateStopOnSymlinkEcp
IopCheckTopDeviceHint
IopSymlinkEnforceEnabledTypes
IopSymlinkGetECP