diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2006-11-03 09:28:23 +0100 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-11-05 23:11:25 +0100 |
commit | 02e60370d4dac83f22d5ae75d5512bcb9a3f24b7 (patch) | |
tree | 3952d784c9d7c061a5ff7c0e23277783f10e55d2 /init/do_mounts_md.c | |
parent | [IPX]: Trivial parts of endianness annotations (diff) | |
download | linux-02e60370d4dac83f22d5ae75d5512bcb9a3f24b7.tar.xz linux-02e60370d4dac83f22d5ae75d5512bcb9a3f24b7.zip |
[IPX]: Annotate and fix IPX checksum
Calculation of IPX checksum got buggered about 2.4.0. The old variant
mangled the packet; that got fixed, but calculation itself got buggered.
Restored the correct logics, fixed a subtle breakage we used to have even
back then: if the sum is 0 mod 0xffff, we want to return 0, not 0xffff.
The latter has special meaning for IPX (cheksum disabled). Observation
(and obvious fix) nicked from history of FreeBSD ipx_cksum.c...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'init/do_mounts_md.c')
0 files changed, 0 insertions, 0 deletions