-
Notifications
You must be signed in to change notification settings - Fork 23
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Do not use invalid queue handle on Rx notification
When system goes to S3 (legacy standby), devices goes from D0 to D3 and NetAdapter destroys datapath, which destroys Tx/Rx queues. When system wakes up, NetAdapter recreates queues. While we update Rx queue handle in EvtAdapterCreateRxQueue, there is time frame between queue being destroyed and new queue is created. If we got incoming packet on the socket during that time frame, we inticate it to Rx queue and white doing that, we get queue's WDF context. When this is done with the handle of destroyed queue, this causes NULL pointer access inside WDF framework. Fix by assigning Rx queue handle to adapter context in EvtQueueStart callback and settings it to WDF_NO_HANDLE in EvtRxQueueStop. In OvpnAdapterNotifyRx proceed with Rx notification only if rxQueue handle is valid. Fixes #36 Signed-off-by: Lev Stipakov <[email protected]>
- Loading branch information
Showing
6 changed files
with
128 additions
and
16 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters