Microsoft Internet Security and Acceleration Server 2000

HTTP_FILTER_RAW_DATA

The ISA Web proxy service includes a pointer to this structure when it is either reading or sending raw data. If your filter must be notified for this event, it should register for either the SF_NOTIFY_READ_RAW_DATA or SF_NOTIFY_SEND_RAW_DATA events.

typedef struct _HTTP_FILTER_RAW_DATA {
  PVOID pvInData;
  DWORD cbInData;
  DWORD cbInBuffer;
  DWORD dwReserved;
} HTTP_FILTER_RAW_DATA, *PHTTP_FILTER_RAW_DATA;

Members

pvInData
Points to the data buffer.
cbInData
The amount of data in the buffer pointed to by pvInData.
cbInBuffer
The size of the buffer pointed to by pvInData.
dwReserved
Reserved for future use.

Remarks

This structure is passed to the SF_NOTIFY_READ_RAW_DATA and SF_NOTIFY_SEND_RAW_DATA notification routines. The pvInData pointer can be replaced by filters that modify the raw data being sent or received. (cbInData and cbInBuffer must also be appropriately updated if the pointer is replaced.) The new buffer memory must remain valid until the end of the request. The new buffer memory can remain valid by using AllocMem or by using a buffer owned by the filter. In addition, the filter must not attempt to free or otherwise deallocate the old pvInData pointer. Only the owner of the memory block is allowed to free the buffer.

Warning  It is not recommended that filters modify the raw data in place. The memory segment may be read-only or the data may be cached directly by an ISAPI extension.

Filters that register for the SF_NOTIFY_READ_RAW_DATA event must be assigned at the Web proxy service level. They cannot be assigned to an individual Web site.