Patrick McHardy wrote:
>>I don't know what correct fix is. Adding an extra call to xfrm4_policy_check 
>>in
>>tcp_v4_rcv before the checksum check fixes this problem and doesn't seem to
>>break anything else. On the other hand, moving some of the code in
>>esp_post_input into esp_input (especially line 298) will work, too.
> 
> 
> So we could move checksum validation behind xfrm4_policy_check or
> already set ip_summed to CHECKSUM_UNNECESSARY in esp_input. Already
> setting ip_summed in esp4_input looks easier. But this still leaves
> one problem. With netfilter and local NAT, a decapsulated transport
> mode packet might be forwarded to another host. In that case the
> checksum contained in the packet is invalid. Any ideas how to fix
> this anyone?

I don't know what the functional separation or difference between a packet input
function and a packet post input function is but the entire code in
esp_post_input doesn't seem like it would cause any problem just by placing it
at end of esp_input instead of current location.

A forwarded decapsulated packet would have the destination IP changed from
server S to another IP. Shouldn't that cause the stack to automatically
recalculate the checksum?

Anyway, enough speculation. I will leave the solution to those who know the
linux kernel networking code.

Thanks.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to