FltFindExtraCreateParameter function (fltkernel.h)

The FltFindExtraCreateParameter routine searches a given ECP list for an ECP context structure of a given type and returns a pointer to this structure if it is found.

Syntax

NTSTATUS FLTAPI FltFindExtraCreateParameter(
  [in]            PFLT_FILTER Filter,
  [in]            PECP_LIST   EcpList,
  [in]            LPCGUID     EcpType,
  [out, optional] PVOID       *EcpContext,
  [out, optional] ULONG       *EcpContextSize
);

Parameters

[in] Filter

Opaque filter pointer for the minifilter driver. This pointer uniquely identifies the minifilter driver and remains constant as long as the minifilter driver is loaded.

[in] EcpList

Pointer to the ECP list structure in which to search for the ECP context structure (given by the EcpType parameter).

[in] EcpType

Pointer to a GUID that uniquely identifies each ECP context structure. This GUID value is used by the FltFindExtraCreateParamter routine to determine if the ECP context structure exists in the ECP list (given by the EcpList parameter).

[out, optional] EcpContext

Optional parameter that receives a pointer to the found ECP context structure. If the ECP context structure is not found in the ECP list, EcpContext is set to NULL. If EcpContext is set to NULL by the caller, the return value of this routine can be used to determine if the ECP context structure is in the ECP list.

[out, optional] EcpContextSize

Optional parameter that receives the size, in bytes, of the found ECP context structure. If the ECP context structure is not found in the ECP list, EcpContextSize is set to zero.

Return value

FltFindExtraCreateParameter returns one of the following NTSTATUS values:

Return code Description
STATUS_SUCCESS
The ECP context structure (as specified by the EcpType parameter) was found in the ECP list (as specified by the EcpList parameter).
STATUS_NOT_FOUND
The ECP context structure (as specified by the EcpType parameter) was not found in the ECP list (as specified by the EcpList parameter).

Requirements

Requirement Value
Minimum supported client This routine is available starting with Windows Vista.
Target Platform Universal
Header fltkernel.h (include Fltkernel.h)
Library FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

See also

ECP_LIST

FltAllocateExtraCreateParameterFromLookasideList

FltCreateFileEx2

FltFreeExtraCreateParameter

FltGetEcpListFromCallbackData

FltInsertExtraCreateParameter

FltRemoveExtraCreateParameter

FltSetEcpListIntoCallbackData

IoCreateFileEx