Microsoft Internet Security and Acceleration Server 2000

IFWXExternalIOCompletion

The IFWXExternalIOCompletion interface has one method, CompleteAsyncIO. This method receives notifications from the Firewall service when an asynchronous I/O operation on an operating system file (such as writing to or reading from a disk) is completed. For more information, see IFWXExternalIOCompletion::CompleteAsyncIO in the Reference section.

Typical Implementations

Implemented by the application filter.

Example Code

This example of an implementation of IFWXExternalIOCompletion::CompleteAsycnIO is taken from the Exeblock sample filter.

HRESULT
STDMETHODCALLTYPE
CEBScannerDataFilter::CompleteAsyncIO(
	/* [in] */ BOOL fSuccess,
	/* [in] */ DWORD NumberOfBytesTransfered,
	/* [in] */ DWORD Win32ErrorCode,
	/* [in] */ IFWXOverlapped __RPC_FAR *pOverlapped,
	/* [in] */ UserContextType UserData)
{

	if (!fSuccess) _Abort();
	pOverlapped->Release();
	IFWXSocket *pISocket = _GetExternalSocket();

	if (pISocket) {
		pISocket->Recv(NULL, this, 0);
		pISocket->Release();
}

	return S_OK;
}

ISA Samples that Use IFWXExternalIOCompletion Methods

The method IFWXExternalIOCompletion::CompleteAsyncIO is used in the following sample provided with ISA: