summaryrefslogtreecommitdiffstats
path: root/source/lib/socket_wrapper/socket_wrapper.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2006-09-14 16:08:13 +0000
committerAndrew Tridgell <tridge@samba.org>2006-09-14 16:08:13 +0000
commit2b8c61023e39822eec932a34a377551b051b7434 (patch)
tree18f9af23f4e69c0936a83f90d3de02180b3d4a96 /source/lib/socket_wrapper/socket_wrapper.c
parent4e46245ee4765dc960d2e4d0157f6d1508809683 (diff)
downloadsamba-2b8c61023e39822eec932a34a377551b051b7434.tar.gz
samba-2b8c61023e39822eec932a34a377551b051b7434.tar.xz
samba-2b8c61023e39822eec932a34a377551b051b7434.zip
r18528: work around what appears to be a compiler bug in gcc on irix. It
caused the RPC-SECRETS test to crash smbd in an inlined version of this memcmp() call. This patch should have absolutely no effect at all, but in fact it prevents the crash. Disassembling at the point of the crash, it shows that gcc is inlining the memcmp(). I don't know enough MIPS assembler to actually spot the bug. In case anyone reading this does know MIPS assembler, here is the gcc generated code that crashes: 0x105e0218 <gssapi_krb5_verify_header+168>: lw $t1,52($sp) 0x105e021c <gssapi_krb5_verify_header+172>: lw $t1,0($t1) 0x105e0220 <gssapi_krb5_verify_header+176>: lhu $t1,0($t1) 0x105e0224 <gssapi_krb5_verify_header+180>: lw $t2,68($sp) 0x105e0228 <gssapi_krb5_verify_header+184>: lhu $t2,0($t2) 0x105e022c <gssapi_krb5_verify_header+188>: subu $t1,$t1,$t2 it gets a segv at 0x105e0220. lha, what do you think of this? The change should be innocuous on all other platforms, apart from making the code harder to read :(
Diffstat (limited to 'source/lib/socket_wrapper/socket_wrapper.c')
0 files changed, 0 insertions, 0 deletions