// fwpsk.h
typedef struct FWPS_STREAM_DATA0_ {
UINT32 flags;
FWPS_STREAM_DATA_OFFSET0 dataOffset;
SIZE_T dataLength;
NET_BUFFER_LIST *netBufferListChain;
} FWPS_STREAM_DATA0;
View the official Windows Driver Kit DDI referenceNo description available.
The FWPS_STREAM_DATA0 structure describes a portion of a data stream.
Note FWPS_STREAM_DATA0 is a specific version of FWPS_STREAM_DATA. See WFP Version-Independent Names and Targeting Specific Versions of Windows for more information.
flagsA variable containing flags that specify the characteristics of the data stream.
For inbound data streams, this can be one or more of the following flags:
Specifies that the stream is an inbound data stream. This flag is always set for inbound data streams.
Specifies that the inbound data stream contains high-priority out-of-band data.
Specifies that the inbound data has arrived with the FIN flag set in the TCP header. This indicates that the sender has disconnected the stream.
Specifies that the inbound data has arrived with the RST flag set in the TCP header. This indicates that the sender has reset the stream.
Note This flag is not implemented in Windows Vista.
For outbound data streams, this can be one or more of the following flags:
Specifies that the stream is an outbound data stream. This flag is always set for outbound data streams.
Specifies that the outbound data stream contains high-priority out-of-band data.
Specifies that the sending client requests that the outbound data stream is not to be buffered. If this flag is set, a callout driver should not hold onto the stream buffer any longer than necessary.
Specifies that the stream is to be disconnected after the data in the outbound data stream has been sent. The network stack will set the FIN flag in the TCP header of the last packet that is sent out.
Specifies that the stream is to be reset after the data in the outbound data stream has been sent. The network stack will set the RST flag in the TCP header of the last packet that is sent out. Callout drivers must not call the FwpsStreamInjectAsync0 function to inject data into the stream if this flag is set.
Note This flag is not implemented in Windows Vista.
dataOffsetAn FWPS_STREAM_DATA_OFFSET0 structure that specifies the offset into the data stream where the portion of the data stream begins.
dataLengthThe number of bytes in the portion of the data stream.
netBufferListChainA pointer to a NET_BUFFER_LIST structure that describes the portion of the data stream.
The filter engine uses the FWPS_STREAM_DATA0 structure to describe the portion of a data stream that a callout's classifyFn callout function can process. The dataStream member of the FWPS_STREAM_CALLOUT_IO_PACKET0 structure points to an FWPS_STREAM_DATA0 structure.
FWPS_STREAM_CALLOUT_IO_PACKET0