[UWP] IVpnPlugIn.Encapsulate stops working after connect for a while

tradebot 21 Reputation points
2021-02-09T04:23:42.13+00:00

Hi,

I've developed a VPN plugin with C++/winRT. "Connect" works fine, and both "Encapsulate" and "Decapsulate" work flawlessly, the I/O loop looks good.

However, after connected for a while (2-5 minutes), Encapsulate stops, the VPN channel never calls this method again, some threads in ntdll exit with code 0. At the same time, Decapsulate is still working. After all returning packets are handled by Decapsulate, the VPN I/O is dead.

And at this moment, the status of this connection is shown as "connected" in the system settings. If I kill the VPN Plugin process from the task manager, win10 launches a new process to run the plugin immediately. And the I/O work again.

I think there is some problem in the BackgroundTask, thread pool and the Encapsulate method so that Encapsulate stops working in every VPN session.

Please help on this issue. Thanks.

Charles

Not Monitored
Not Monitored
Tag not monitored by Microsoft.
40,191 questions
0 comments No comments
{count} votes

Accepted answer
  1. Roy Li - MSFT 33,486 Reputation points Microsoft Vendor
    2021-02-09T05:55:57.98+00:00

    Hello,

    Welcome to Microsoft Q&A!

    Currently, Microsoft Q&A supports the products listed over here: supported topics (more to be added later on).

    Now we could offer limited help with VPN. For the VPN issues, It needs more professional support. I suggest that you might need to open a support ticket for this. Please contact our paid phone support at MS Support. You will get 1:1 support on that. Please kindly note that your support ticket will be free if it is Microsoft's issue.

    Thank you.


    If the response is helpful, please click "Accept Answer" and upvote it.
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.