// ntifs.h
NTSTATUS FsRtlGetNextExtraCreateParameter(
[in] PECP_LIST EcpList,
[in, optional] PVOID CurrentEcpContext,
[out, optional] LPGUID NextEcpType,
[out] PVOID *NextEcpContext,
[out, optional] ULONG *NextEcpContextSize
);
View the official Windows Driver Kit DDI referenceNo description available.
The FsRtlGetNextExtraCreateParameter routine returns a pointer to the next (or first) extra create parameter (ECP) context structure in a given ECP list.
EcpList [in]Pointer to the ECP list to examine.
CurrentEcpContext [in, optional]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.
NextEcpType [out, optional]Optional parameter that receives a pointer to the GUID of the returned ECP context structure.
NextEcpContext [out]Optional parameter that receives a pointer to the returned ECP context structure.
NextEcpContextSize [out, optional]Optional parameter that receives the size, in bytes, of the returned ECP context structure.
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. |
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.
FltAllocateExtraCreateParameter
FltAllocateExtraCreateParameterFromLookasideList
FltAllocateExtraCreateParameterList
FltFreeExtraCreateParameterList