On May 31, 2010, at 6:10 PM, Ondrej Moriš wrote: > there are some issues when running self-tests on ppc64, it seems to be > related to little / big endian - packet checksums are "twisted": > > Example (ikev2fourv.out.diff): > > < 192.168.1.2.500 > 192.168.1.1.500: [bad udp cksum ee7a!] isakmp 2.0 > msgid 00000000 cookie a88875a8198992a6->0000000000000000: parent_sa > ikev2_init[I]: > --- > > 192.168.1.2.500 > 192.168.1.1.500: [bad udp cksum 7aee!] isakmp 2.0 > > msgid 00000000 cookie a88875a8198992a6->0000000000000000: parent_sa > > ikev2_init[I]: > > This issue appears on ppc64 only (i.e. i386, x86_64 work fine).
"This issue appears on ppc64 only" and "i386, x86_64 work fine" mean different things; not only is there also ppc32, but there are other 32-bit and 64-bit architectures on which modern UN*Xes run and on which tcpdump should be able to work. Is this a problem on ppc32? If so, it's probably a byte-order issue - do you have any other big-endian architectures on which to test this (ARM, System/390, 32-bit MIPS, SPARCv7/v8, etc. - 32-bit big-endian; z/Architecture, 64-bit MIPS, SPARCv9 - 64-bit big-endian)? If not, it might be a combination of byte-order *and* width; what happens on other 64-bit big-endian architectures? > Could this, possibly, lead to any problems? Is ppc64 architecture supported? We don't really have an official list of supported architectures. In any case, there's almost certainly nothing PowerPC-specific about this; it's either a big-endian vs. little-endian issue (as noted above, there are other big-endian architectures supported by, for example, Linux), a combination of that plus a 64-bit issue (as noted, there are other big-endian 64-bit architectures), a compiler issue (which isn't a case of *us* supporting the architecture), or a case of incorrect C code that happens to compile to machine code that does the right thing with some compilers on some architectures but not on others (again, not a case of us supporting or not supporting particular architectures, just a bug). - This is the tcpdump-workers list. Visit https://cod.sandelman.ca/ to unsubscribe.