Share via


IFWXIOCompletion interface

Applies to: desktop apps only

The IFWXIOCompletion interface includes a method that receives a notification from the Microsoft Firewall service when an asynchronous I/O send, sendto, or receive operation is completed on an IFWXSocket interface. These overlapped operations require that the filter implement this interface to carry out data pumping.

For more information about how the IFWXIOCompletion interface is used in application filters, see Filter Object Model.

When to implement

An application filter that initiates overlapped operations by calling the asynchronous methods on an IFWXSocket interface must implement this notification interface.

Members

The IFWXIOCompletion interface inherits from the IUnknown interface. IFWXIOCompletion also has these types of members:

  • Methods

Methods

The IFWXIOCompletion interface has these methods.

Method Description
CompleteAsyncIO

Receives a notification from the Firewall service when an asynchronous I/O operation that was initiated on an IFWXSocket interface completes.

 

Remarks

When calling a method that begins an overlapped operation, the filter must pass a pointer to its IFWXIOCompletion interface to that method. The Firewall service calls CompleteAsyncIO on the IFWXIOCompletion interface of the filter when the overlapped operation completes.

Forefront TMG has two other notification methods for overlapped operations. The IFWXExternalIOCompletion::CompleteAsyncIO notification method is used for notification when a Windows overlapped operation completes, and the IFWXAcceptCompletion::CompleteAsyncAccept method is used for notification when the IFWXNetworkSocket::Accept method completes.

Requirements

Minimum supported client

None supported

Minimum supported server

Windows Server 2008 R2, Windows Server 2008 with SP2 (64-bit only)

Version

Forefront Threat Management Gateway (TMG) 2010

Header

Wspfwext.idl

See also

Filter Interfaces

IFWXSocket::Recv

IFWXSocket::Send

IFWXSocket::SendTo

 

 

Build date: 7/12/2010