FsRtlGetNextExtraCreateParameter function (ntifs.h)

The FsRtlGetNextExtraCreateParameter routine returns a pointer to the next (or first) extra create parameter (ECP) context structure in a given ECP list.

Syntax

NTSTATUS FsRtlGetNextExtraCreateParameter(
  [in]            PECP_LIST EcpList,
  [in, optional]  PVOID     CurrentEcpContext,
  [out, optional] LPGUID    NextEcpType,
  [out]           PVOID     *NextEcpContext,
  [out, optional] ULONG     *NextEcpContextSize
);

Parameters

[in] EcpList

Pointer to the ECP list to examine.

[in, optional] CurrentEcpContext

Optional pointer to an ECP context structure in the given ECP list. If present, FsRtlGetNextExtraCreateParameter returns a pointer to the ECP after the CurrentEcpContext ECP context structure. If CurrentEcpContext is NULL, FsRtlGetNextExtraCreateParameter returns the first ECP context structure in the list.

[out, optional] NextEcpType

Optional parameter that receives a pointer to the GUID of the returned ECP context structure.

[out] NextEcpContext

Optional parameter that receives a pointer to the returned ECP context structure.

[out, optional] NextEcpContextSize

Optional parameter that receives the size, in bytes, of the returned ECP context structure.

Return value

FsRtlGetNextExtraCreateParameter returns one of the following NTSTATUS values:

Return code Description
STATUS_SUCCESS
FsRtlGetNextExtraCreateParameter found an ECP context structure in the EcpList ECP list.
STATUS_NOT_FOUND
The EcpList ECP list is empty or CurrentEcpContext is the last ECP in the list (that is, there is no next ECP list element). Additionally, NextEcpContext is set to NULL and NextEcpContextSize is set to zero.
STATUS_INVALID_PARAMETER
The EcpList parameter is NULL.

Remarks

TheFsRtlGetNextExtraCreateParameter routine processes an ECP list in a non-circular manner. That is, if the ECP context structure pointed to by the CurrentEcpContext parameter is the last element in the ECP list, there is no "next" ECP in the list and the routine returns STATUS_NOT_FOUND.

Requirements

Requirement Value
Minimum supported client The FsRtlGetNextExtraCreateParameter routine is available starting with Windows Vista.
Target Platform Universal
Header ntifs.h (include Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

See also

ECP_LIST

FltAllocateExtraCreateParameter

FltAllocateExtraCreateParameterFromLookasideList

FltAllocateExtraCreateParameterList

FltCreateFileEx2

FltFreeExtraCreateParameter

FltFreeExtraCreateParameterList

FltGetEcpListFromCallbackData

FltInsertExtraCreateParameter

FltRemoveExtraCreateParameter

FltSetEcpListIntoCallbackData

IoCreateFileEx