FltGetStreamContext routine

The FltGetStreamContext routine retrieves a context that was set for a file stream by a given minifilter driver instance.

Syntax


NTSTATUS FltGetStreamContext(
  _In_  PFLT_INSTANCE Instance,
  _In_  PFILE_OBJECT  FileObject,
  _Out_ PFLT_CONTEXT  *Context
);

Parameters

Instance [in]

Opaque instance pointer for the minifilter driver instance whose context is to be retrieved.

FileObject [in]

Pointer to a file object for the stream.

Context [out]

Pointer to a caller-allocated variable that receives the address of the context.

Return value

FltGetStreamContext returns STATUS_SUCCESS or an appropriate NTSTATUS value, such as one of the following:

Return codeDescription
STATUS_NOT_FOUND

No matching context was found. This is an error code.

STATUS_NOT_SUPPORTED

The file system does not support per-stream contexts for this file stream. This is an error code.

 

Remarks

FltGetStreamContext retrieves a context that was set for a file stream by a given minifilter driver instance.

FltGetStreamContext increments the reference count on the context that the Context parameter points to. When this context pointer is no longer needed, the caller must decrement its reference count by calling FltReleaseContext. Thus every successful call to FltGetStreamContext must be matched by a subsequent call to FltReleaseContext.

To set a context for a file stream, call FltSetStreamContext.

To allocate a new context, call FltAllocateContext.

To delete a stream context, call FltDeleteStreamContext or FltDeleteContext.

Requirements

Target platform

Universal

Header

Fltkernel.h (include Fltkernel.h)

Library

FltMgr.lib

DLL

Fltmgr.sys

IRQL

<= APC_LEVEL

See also

FltAllocateContext
FltDeleteContext
FltDeleteStreamContext
FltReleaseContext
FltSetStreamContext

 

 

Send comments about this topic to Microsoft

Show: