Marko Rößler <[EMAIL PROTECTED]> writes:
> Russ Allbery schrieb:

>> Could you try this patch as well and see if it helps any?  It's
>> unfortunately less likely to help than the previous one, but it's
>> possible that it's the issue.  There's some weird gcc optimizer issue
>> going on.  This helps on Mac OS X, at least.

> I am afraid but this patch does not help either.

> The bus error happens at line 236 in src/des/key_sched.c

> 236             if ((unsigned)Key[(int)*kp++])
> 237                 temp |= (1 << BIT(31));

Okay, one more try at this.  One of the other OpenAFS developers found a
SPARC Linux box with AFS installed and spent some time tracking this
down.

Could you try this patch instead of all the previous patches I sent you
(in other words, try applying it to a fresh copy of the source retrieved
via apt-get source openafs) and see if this clears up the problem?

diff -ru openafs-1.4.4/src/des/des.h openafs-1.4.4.patched/src/des/des.h
--- openafs-1.4.4/src/des/des.h 2003-07-15 23:14:59.000000000 +0000
+++ openafs-1.4.4.patched/src/des/des.h 2007-07-04 14:35:55.000000000 +0000
@@ -20,7 +20,10 @@
 typedef unsigned char des_cblock[8];   /* crypto-block size */
 /* Key schedule */
 typedef struct des_ks_struct {
+    union {
+    afs_uint32 i[2];
     des_cblock _;
+    } _;
 } des_key_schedule[16];
 
 #define DES_KEY_SZ     (sizeof(des_cblock))
diff -ru openafs-1.4.4/src/des/pcbc_encrypt.c 
openafs-1.4.4.patched/src/des/pcbc_encrypt.c
--- openafs-1.4.4/src/des/pcbc_encrypt.c        2004-10-18 07:11:56.000000000 
+0000
+++ openafs-1.4.4.patched/src/des/pcbc_encrypt.c        2007-07-04 
14:36:33.000000000 +0000
@@ -24,9 +24,9 @@
 #ifndef KERNEL
 #include <stdio.h>
 #endif
-#include <des.h>
 #include <afsconfig.h>
 #include <afs/param.h>
+#include <des.h>
 #include "des_prototypes.h"
 
 RCSID

-- 
Russ Allbery ([EMAIL PROTECTED])               <http://www.eyrie.org/~eagle/>

Reply via email to