IVpnPlugIn.Decapsulate 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
此方法指示 VPN 插件准备从 VPN 服务器接收缓冲区,outerTunnelTransport,提取封装在缓冲区中的任意数量的 IP 数据包,并将 IP 数据包连同需要通过 outerTunnelTransport 发送到 VPN 服务器的任何其他回复缓冲区一起返回。
public:
void Decapsulate(VpnChannel ^ channel, VpnPacketBuffer ^ encapBuffer, VpnPacketBufferList ^ decapsulatedPackets, VpnPacketBufferList ^ controlPacketsToSend);
void Decapsulate(VpnChannel const& channel, VpnPacketBuffer const& encapBuffer, VpnPacketBufferList const& decapsulatedPackets, VpnPacketBufferList const& controlPacketsToSend);
public void Decapsulate(VpnChannel channel, VpnPacketBuffer encapBuffer, VpnPacketBufferList decapsulatedPackets, VpnPacketBufferList controlPacketsToSend);
function decapsulate(channel, encapBuffer, decapsulatedPackets, controlPacketsToSend)
Public Sub Decapsulate (channel As VpnChannel, encapBuffer As VpnPacketBuffer, decapsulatedPackets As VpnPacketBufferList, controlPacketsToSend As VpnPacketBufferList)
参数
- channel
- VpnChannel
表示 VPN 插件实例 VPN 连接到 VPN 服务器的 VPN 通道对象。
- encapBuffer
- VpnPacketBuffer
缓冲区源自 VPN 服务器,并通过 outerTunnelTransport 接收。
- decapsulatedPackets
- VpnPacketBufferList
IVpnPacketBuffer 链,该链表示从缓冲区中提取和解封的任何 L3 IP 数据包,需要通过 VPN 接口注入才能由客户端计算机的 TCP/IP 堆栈接收。
- controlPacketsToSend
- VpnPacketBufferList
IVpnPacketBuffer 链,表示 VPN 插件需要其协议规范来回复到 VPN 服务器的任何控制消息。
Windows 要求
应用功能 |
networkingVpnProvider
|
注解
如果发生错误,将只删除数据包。 需要通过 解码的Packets 链将插件请求的任何 IVpnPacketBuffer 对象返回到 VPN 框架,以注入客户端 TCP/IP 堆栈,或 controlPacketsToSend 链,以回复 VPN 服务器。 VPN 框架会将链接在 decapedPacket 上作为唯一 IP 数据包发送到 VPN 接口的所有 VpnPacketBufferList。