DEVEL15-endian-fixes-20060802
authorDerrick Brashear <shadow@dementia.org>
Wed, 2 Aug 2006 20:01:20 +0000 (20:01 +0000)
committerDerrick Brashear <shadow@dementia.org>
Wed, 2 Aug 2006 20:01:20 +0000 (20:01 +0000)
macos needs us to do weird stuff so -arch i386 -arch ppc works

(cherry picked from commit fd099b3e763b6b2c5bfb87db0cae8a900f031ad3)

12 files changed:
acconfig.h
configure.in
src/afs/afs_icl.c
src/afs/afs_md5.c
src/afs/afs_util.c
src/cf/bigendian.m4
src/rxkad/bg-fcrypt.c
src/rxkad/domestic/fcrypt.c
src/rxkad/md4.c
src/rxkad/md5.c
src/tviced/serialize_state.c
src/venus/kdump.c

index 2aa1dae..e195030 100644 (file)
@@ -8,15 +8,30 @@ static /**/const char *const rcsid[] = { (char *)rcsid, "\100(#)" msg }
 #undef HAVE_RES_SEARCH
 #undef HAVE_SOCKET
 #undef STRUCT_SOCKADDR_HAS_SA_LEN
-#if ENDIANESS_IN_SYS_PARAM_H
-# ifndef KERNEL
-#  include <sys/types.h>
-#  include <sys/param.h>
-#  if BYTE_ORDER == BIG_ENDIAN
-#  define WORDS_BIGENDIAN 1
+#if !defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__)
+# if ENDIANESS_IN_SYS_PARAM_H
+#  ifndef KERNEL
+#   include <sys/types.h>
+#   include <sys/param.h>
+#   if BYTE_ORDER == BIG_ENDIAN
+#   define WORDS_BIGENDIAN 1
+#   endif
+#  endif
+# else
+#  if defined(AUTOCONF_FOUND_BIGENDIAN)
+#   define WORDS_BIGENDIAN 1
+#  else
+#   undef WORDS_BIGENDIAN
 #  endif
 # endif
+#else
+#if defined(__BIG_ENDIAN__)
+#define WORDS_BIGENDIAN 1
+#else
+#undef WORDS_BIGENDIAN
+#endif
 #endif
+
 #undef AFS_AFSDB_ENV
 #undef AFS_LARGEFILE_ENV
 #undef AFS_NAMEI_ENV
index 0defe46..3e71857 100644 (file)
@@ -53,8 +53,8 @@ src/kauth/Makefile \
 src/kauth/test/Makefile \
 src/libacl/Makefile \
 src/libacl/test/Makefile \
-src/libadmin/adminutil/Makefile \
 src/libadmin/Makefile \
+src/libadmin/adminutil/Makefile \
 src/libadmin/bos/Makefile \
 src/libadmin/cfg/Makefile \
 src/libadmin/cfg/test/Makefile \
@@ -114,8 +114,8 @@ src/tviced/Makefile \
 src/tvolser/Makefile \
 src/ubik/Makefile \
 src/update/Makefile \
-src/usd/test/Makefile \
 src/usd/Makefile \
+src/usd/test/Makefile \
 src/uss/Makefile \
 src/util/Makefile \
 src/util/test/Makefile \
index 40bff4b..69abd90 100644 (file)
@@ -620,7 +620,7 @@ afs_icl_AppendRecord(register struct afs_icl_log *logp, afs_int32 op,
            ICL_APPENDINT32(logp,
                            (afs_int32) ((struct afs_hyper_t *)p1)->low);
        } else if (t1 == ICL_TYPE_INT64) {
-#ifdef AFSLITTLE_ENDIAN
+#ifndef WORDS_BIGENDIAN
 #ifdef AFS_64BIT_CLIENT
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p1)[1]);
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p1)[0]);
@@ -660,7 +660,7 @@ afs_icl_AppendRecord(register struct afs_icl_log *logp, afs_int32 op,
            ICL_APPENDINT32(logp,
                            (afs_int32) ((struct afs_hyper_t *)p2)->low);
        } else if (t2 == ICL_TYPE_INT64) {
-#ifdef AFSLITTLE_ENDIAN
+#ifndef WORDS_BIGENDIAN
 #ifdef AFS_64BIT_CLIENT
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p2)[1]);
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p2)[0]);
@@ -700,7 +700,7 @@ afs_icl_AppendRecord(register struct afs_icl_log *logp, afs_int32 op,
            ICL_APPENDINT32(logp,
                            (afs_int32) ((struct afs_hyper_t *)p3)->low);
        } else if (t3 == ICL_TYPE_INT64) {
-#ifdef AFSLITTLE_ENDIAN
+#ifndef WORDS_BIGENDIAN
 #ifdef AFS_64BIT_CLIENT
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p3)[1]);
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p3)[0]);
@@ -740,7 +740,7 @@ afs_icl_AppendRecord(register struct afs_icl_log *logp, afs_int32 op,
            ICL_APPENDINT32(logp,
                            (afs_int32) ((struct afs_hyper_t *)p4)->low);
        } else if (t4 == ICL_TYPE_INT64) {
-#ifdef AFSLITTLE_ENDIAN
+#ifndef WORDS_BIGENDIAN
 #ifdef AFS_64BIT_CLIENT
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p4)[1]);
            ICL_APPENDINT32(logp, (afs_int32) ((afs_int32 *) p4)[0]);
index 928725e..6ce569a 100644 (file)
 
 RCSID("$Id$");
 
-#undef WORDS_BIGENDIAN
-#ifdef AFSBIG_ENDIAN
-#define WORDS_BIGENDIAN 1
-#endif
-
 #include "afs_md5.h"
 
 #define A m->counter[0]
@@ -224,13 +219,13 @@ AFS_MD5_Update(struct afs_md5 *m, const void *v, size_t len)
        if (offset == 64) {
 #if defined(WORDS_BIGENDIAN)
            int i;
-           afs_uint32 current[16];
-           struct x32 *u = (struct x32 *)m->save;
+           afs_uint32 cur[16];
+           struct x32 *ui = (struct x32 *)m->save;
            for (i = 0; i < 8; i++) {
-               current[2 * i + 0] = swap_afs_uint32(u[i].a);
-               current[2 * i + 1] = swap_afs_uint32(u[i].b);
+               cur[2 * i + 0] = swap_afs_uint32(ui[i].a);
+               cur[2 * i + 1] = swap_afs_uint32(ui[i].b);
            }
-           calc(m, current);
+           calc(m, cur);
 #else
            calc(m, (afs_uint32 *) m->save);
 #endif
index eaf9825..5fe5327 100644 (file)
@@ -561,7 +561,7 @@ calc (struct afs_md5 *m, afs_uint32 *data)
  * From `Performance analysis of MD5' by Joseph D. Touch <touch@isi.edu>
  */
 
-#if defined(AFSBIG_ENDIAN)
+#if defined(WORDS_BIGENDIAN)
 static inline afs_uint32
 swap_u_int32_t (afs_uint32 t)
 {
@@ -599,7 +599,7 @@ AFS_MD5_Update (struct afs_md5 *m, const void *v, size_t len)
        p += l;
        len -= l;
        if(offset == 64){
-#if defined(AFSBIG_ENDIAN)
+#if defined(WORDS_BIGENDIAN)
            int i;
            afs_uint32 temp[16];
            struct x32 *us = (struct x32*)m->save;
index 4e92ff6..f8250cf 100644 (file)
@@ -45,7 +45,7 @@ AC_CACHE_CHECK(whether byte ordering is bigendian, openafs_cv_c_bigendian,[
   fi
 ])
 if test "$openafs_cv_c_bigendian" = "yes"; then
-  AC_DEFINE(WORDS_BIGENDIAN, 1, [define if target is big endian])dnl
+  AC_DEFINE(AUTOCONF_FOUND_BIGENDIAN, 1, [define if target is big endian])dnl
 fi
 if test "$openafs_cv_c_bigendian_compile" = "yes"; then
   AC_DEFINE(ENDIANESS_IN_SYS_PARAM_H, 1, [define if sys/param.h defines the endiness])dnl
index 0c3cabc..35a8380 100644 (file)
@@ -76,11 +76,6 @@ RCSID
 #include "private_data.h"
 #include <des/stats.h>
 
-#undef WORDS_BIGENDIAN
-#ifdef AFSBIG_ENDIAN
-#define WORDS_BIGENDIAN 1
-#endif
-
 /*
  * Unrolling of the inner loops helps the most on pentium chips
  * (ca 18%). On risc machines only expect a modest improvement (ca 5%).
index 35e6937..8d1884d 100644 (file)
@@ -120,7 +120,7 @@ fc_ecb_encrypt(void * clear, void * cipher,
     volatile unsigned char *Schar = (unsigned char *)&S;
     int i;
 
-#if defined(vax) || (defined(mips) && defined(MIPSEL)) || defined(AFSLITTLE_ENDIAN)
+#ifndef WORDS_BIGENDIAN
 #define Byte0 3
 #define Byte1 2
 #define Byte2 1
index 7bc3cee..6844caf 100644 (file)
 
 RCSID("$Id$");
 
-#undef WORDS_BIGENDIAN
-#ifdef AFSBIG_ENDIAN
-#define WORDS_BIGENDIAN 1
-#endif
+
+
+
+
 
 #include "md4.h"
 #include "hash.h"
index 7b3b4b7..397023b 100644 (file)
 
 RCSID("$Id$");
 
-#undef WORDS_BIGENDIAN
-#ifdef AFSBIG_ENDIAN
-#define WORDS_BIGENDIAN 1
-#endif
+
+
+
+
 
 #include "md5.h"
 #include "hash.h"
index c1b4583..4095410 100644 (file)
@@ -990,7 +990,7 @@ fs_stateFillHeader(struct fs_state_header * hdr)
     hdr->timestamp = FT_ApproxTime();
     hdr->server_uuid = FS_HostUUID;
     hdr->valid = 1;
-#ifdef AFSBIG_ENDIAN
+#ifdef WORDS_BIGENDIAN
     hdr->endianness = 1;
 #else
     hdr->endianness = 0;
@@ -1016,7 +1016,7 @@ fs_stateCheckHeader(struct fs_state_header * hdr)
        ViceLog(0, ("fs_stateCheckHeader: dump was previously flagged invalid\n"));
        ret = 1;
     }
-#ifdef AFSBIG_ENDIAN
+#ifdef WORDS_BIGENDIAN
     else if (!hdr->endianness) {
        ViceLog(0, ("fs_stateCheckHeader: wrong endianness\n"));
        ret = 1;
index ceeb8ce..67c689a 100644 (file)
@@ -288,7 +288,7 @@ typedef struct timeval {
     int tv_usec;
 } timeval_t;                   /* Needed here since KERNEL defined. */
 #endif /*AFS_ALPHA_LINUX20_ENV */
-#if defined(AFSBIG_ENDIAN)
+#if defined(WORDS_BIGENDIAN)
 #define _LINUX_BYTEORDER_BIG_ENDIAN_H
 #else
 #define _LINUX_BYTEORDER_LITTLE_ENDIAN_H