Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The FltGetNewSystemBufferAddress function retrieves the AssociatedIrp.SystemBuffer buffer, which the file system has allocated. A minifilter driver's post-callback routine calls this function.
Syntax
PVOID FLTAPI FltGetNewSystemBufferAddress(
[in] PFLT_CALLBACK_DATA CallbackData
);
Parameters
[in] CallbackData
A pointer to a FLT_CALLBACK_DATA structure that represents an I/O operation.
Return value
If the AssociatedIrp.SystemBuffer buffer was allocated by the file system, FltGetNewSystemBufferAddress returns a pointer to this buffer; otherwise it returns NULL.
Remarks
A minifilter driver's post-callback routine calls FltGetNewSystemBufferAddress function to retrieve a pointer to the AssociatedIrp.SystemBuffer buffer that the file system has allocated. A minifilter driver should call this function only when the FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER flag is set in CallbackData.Flags.
When the file system allocates its own AssociatedIrp.SystemBuffer buffer, Filter Manager will set the FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER flag. This signals the minifilter that the buffer they received in the pre-operation is not the one that has the data read from the file system.
If the FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER flag is not set, then this routine returns NULL.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available in Microsoft Windows 7 and later versions of the Windows operating system. |
Target Platform | Universal |
Header | fltkernel.h (include Fltkernel.h) |
Library | Fltmgr.lib |
DLL | Fltmgr.sys |
IRQL | <= DISPATCH_LEVEL |