In the Configure script for OpenSSL (both 0.9.7 and 0.9.6) there is a line that starts with: "linux-elf-arm","gcc:-DL_ENDIAN ... This obviously doesnt work on big endian ARM systems. Replacing L_ENDIAN with B_ENDIAN fixes the problem, but whether correct "clean" solution is to remove it or replace it with -DB_ENDIAN I dont know (havent tried without yet) Reproducible: Always Steps to Reproduce: 1. ssh to remote machine from big-endian arm system with unpatched openssl/openssh gives "error: corrupted MAC on input" and vice versa. 2. ssh to localhost works, as sshd is affected by same endian issue Actual Results:
could you post the output of /proc/cpuinfo and the diff uname options (-a, -m, -p, -i) ?
Sure, here goes: babysmurf ~ # cat /proc/cpuinfo Processor : XScale-IXP425/IXC1100 rev 1 (v5b) BogoMIPS : 131.48 Features : swp half thumb fastmult edsp Hardware : Intel IXDP425 Development Platform Revision : 0000 Serial : 0000000000000000 babysmurf ~ # uname -a Linux babysmurf 2.4.22-xfs #379 Wed Jul 7 15:59:25 CST 2004 armv5b XScale-IXP425/IXC1100 rev 1 (v5b) Intel IXDP425 Development Platform GNU/Linux babysmurf ~ # uname -m armv5b babysmurf ~ # uname -p XScale-IXP425/IXC1100 rev 1 (v5b) babysmurf ~ # uname -i Intel IXDP425 Development Platform
added patch to 0.9.7e