Share via


IVpnPlugIn Interface

Definition

Provides an interface to implement specific third party VPN client operations.

public interface class IVpnPlugIn
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(3468135687, 53416, 18179, 160, 145, 200, 194, 192, 145, 91, 196)]
struct IVpnPlugIn
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(3468135687, 53416, 18179, 160, 145, 200, 194, 192, 145, 91, 196)]
public interface IVpnPlugIn
Public Interface IVpnPlugIn
Attributes

Windows requirements

Device family
Windows 10 (introduced in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v1.0)
App capabilities
networkingVpnProvider

Methods

Connect(VpnChannel)

This method instructs the VPN plug-in to connect to the VPN server and establish the VPN channel.

Decapsulate(VpnChannel, VpnPacketBuffer, VpnPacketBufferList, VpnPacketBufferList)

This method instructs the VPN plug-in to prepare receive a buffer from the VPN server outerTunnelTransport, extract any number of IP packets encapsulated in the buffer, and return the IP packets together with any other reply buffers that are needed to be sent back through the outerTunnelTransport to the VPN server.

Disconnect(VpnChannel)

This method instructs the VPN plug-in to disconnect from the VPN server and destroy the VPN channel.

Encapsulate(VpnChannel, VpnPacketBufferList, VpnPacketBufferList)

This method instructs the VPN plug-in to prepare the indicated L3 IP packet for transmission to the VPN server. The process might include any encapsulation specific to the VPN protocol.

GetKeepAlivePayload(VpnChannel, VpnPacketBuffer)

This method instructs the VPN plug-in to compute and return a Keep alive payload ready to be sent to the VPN server.

Applies to