You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Client and server running locally are sending packets to/from each other (loopback).
When passthru is running, WinDivertRecvEx is showing packets from the client to the server as not having valid ip checksums (addr->IPChecksum is 0). A missing ip checksum makes sense because checksum offload is enabled, but causes passthru to fail because WinDivertSendEx expects valid checksums from the addr.
I'm not sure where afterwards in the chain the failure happens, but adding a call to WinDivertHelperCalcChecksums before WinDivertSendEx allows passthru to work in my case.
Is there something here that needs fixing in WinDivertSendEx? or is it the sample code that's just incorrect?
The text was updated successfully, but these errors were encountered:
If addr->IPChecksum is zero, then it should still be possible to inject the packet with WinDivertSendEx. In this case, the driver is supposed to call WinDivertHelperCalcChecksums internally.
So I am not sure why it would not be working. I will try to do some testing and get back on this.
When passthru is running, WinDivertRecvEx is showing packets from the client to the server as not having valid ip checksums (addr->IPChecksum is 0). A missing ip checksum makes sense because checksum offload is enabled, but causes passthru to fail because WinDivertSendEx expects valid checksums from the addr.
I'm not sure where afterwards in the chain the failure happens, but adding a call to WinDivertHelperCalcChecksums before WinDivertSendEx allows passthru to work in my case.
Is there something here that needs fixing in WinDivertSendEx? or is it the sample code that's just incorrect?
The text was updated successfully, but these errors were encountered: