Separate checksum addition/subtraction into 2 steps

This commit is contained in:
Nico Schottelius 2019-07-16 12:30:29 +02:00
parent 8535eeccd9
commit 811e4c2b11
2 changed files with 6 additions and 2 deletions

View file

@ -5335,6 +5335,9 @@ Gives off-by-one in udp, sometimes!
10:08:52.626713 IP6 (hlim 64, next-header UDP (17) payload length: 14) 2001:db8:1::a00:1.51345 > 2001:db8::1.2342: [bad udp cks
*** TODO 2019-07-16: get values: v6sum, v4sum
- v6sum = 0x9a6b
** The NetPFGA saga
Problems encountered:
- The logfile for a compile run is 10k+ lines

View file

@ -54,8 +54,9 @@ action delta_udp_from_v4_to_v6()
{
delta_prepare();
// hdr.udp.checksum = meta.v6sum;
hdr.udp.checksum = meta.v4sum;
// hdr.udp.checksum = hdr.udp.checksum + meta.v6sum - meta.v4sum;
// hdr.udp.checksum = meta.v4sum;
hdr.udp.checksum = hdr.udp.checksum + meta.v6sum;
hdr.udp.checksum = hdr.udp.checksum - meta.v4sum;
}
action delta_tcp_from_v4_to_v6()