FltMupGetProviderInfoFromFileObject function (fltkernel.h)
FltMupGetProviderInfoFromFileObject retrieves the provider information corresponding to a file object.
Syntax
NTSTATUS FLTAPI FltMupGetProviderInfoFromFileObject(
PFLT_INSTANCE Instance,
PFILE_OBJECT FileObject,
ULONG Level,
PVOID Buffer,
PULONG BufferSize
);
Parameters
Instance
[in] Opaque pointer to the filter instance associated with this file object. This parameter is required and can't be NULL.
FileObject
[in] Pointer to the file object for which the provider information is to be retrieved. This parameter is required and can't be NULL.
Level
[in] The level of information that this routine should return. For more information about the possible values for this parameter, see FsRtlMupGetProviderInfoFromFileObject.
Buffer
[out] Pointer to a buffer that receives the provider information. The returned data is based on the specified Level. This buffer must be large enough to hold the information requested by the Level parameter.
BufferSize
[in/out] Pointer to a variable that specifies the size, in bytes, of the buffer that is pointed to by the Buffer parameter. On input, this variable specifies the size of the buffer. On output, this variable receives the number of bytes that were written to the buffer.
Return value
FltMupGetProviderInfoFromFileObject returns STATUS_SUCCESS if the operation is successful. Otherwise, it returns an appropriate NTSTATUS code.
Remarks
This routine is needed to handle the case of providers that register using FsRtlRegisterUncProviderEx. The device name on the file objects for such provider would be \Device\Mup.
Filters can use this routine for the following purposes:
- To be able to filter specific redirectors.
- To find a redirector backing a file object so that they can work around possible bugs in redirectors.
The MUP (multiple UNC provider) can't be unloaded for this call.
The caller guarantees that the FileObject will be valid for the duration of the call.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 11, version 24H2 |
Header | fltkernel.h |
IRQL | <= APC_LEVEL |