You have to correctly set your checksum options according to your hardware checksum capabilities.
Setting all 1 or all 0 is not correct per se.
Ethernet hardware is also capable of generating IP checksums, TCP checksums, UDP checksums, all of them, some of them, none of them. Check your hardware docs, decide whether you want your hardware or lwIP to be the one in charge of checksumming (usually hw is a better option), and set both to do its part. If you set lwIP to not do checksumming, it will leave that field at zero, so the hardware can fill in. But if you don't tell the hardware to do it... it will go out as zeroes. If you don't know how to set your hardware, or it is not able to generate one (or all) checksums ("checksum offloading"), then set lwIP to do it for that one (or all of them).

_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to