aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2004-05-26 17:50:11 +0000
committerTom Yu <tlyu@mit.edu>2004-05-26 17:50:11 +0000
commit4f6f620875ba9a2f1946025232daefed762fd811 (patch)
treec013620312a916adb684010b8cef7d6c144a887e /src
parent7082f1ff11dea3a3e59c668cb5b442fa23c8b569 (diff)
downloadkrb5-4f6f620875ba9a2f1946025232daefed762fd811.zip
krb5-4f6f620875ba9a2f1946025232daefed762fd811.tar.gz
krb5-4f6f620875ba9a2f1946025232daefed762fd811.tar.bz2
pullup from trunk
ticket: 2564 version_fixed: 1.3.4 git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-3@16365 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/crypto/aes/ChangeLog8
-rw-r--r--src/lib/crypto/aes/aesopt.h26
-rw-r--r--src/util/db2/ChangeLog4
-rw-r--r--src/util/db2/configure.in3
-rw-r--r--src/util/db2/include/ChangeLog4
-rw-r--r--src/util/db2/include/db-int.h3
6 files changed, 36 insertions, 12 deletions
diff --git a/src/lib/crypto/aes/ChangeLog b/src/lib/crypto/aes/ChangeLog
index f937690..6955bc1 100644
--- a/src/lib/crypto/aes/ChangeLog
+++ b/src/lib/crypto/aes/ChangeLog
@@ -1,3 +1,11 @@
+2004-05-25 Tom Yu <tlyu@mit.edu>
+
+ * aesopt.h (PLATFORM_BYTE_ORDER): Treat _WIN32 as always
+ little-endian. Default to little-endian if there's no other
+ compile-time way to detect endianness, noting it as a guess.
+ (SAFE_IO): Error out if SAFE_IO is not set and endianness was
+ guessed.
+
2004-05-07 Ken Raeburn <raeburn@mit.edu>
* aesopt.h (PLATFORM_BYTE_ORDER): Check for _MIPSEB, _MIPSEL. If
diff --git a/src/lib/crypto/aes/aesopt.h b/src/lib/crypto/aes/aesopt.h
index da5c83b..0eebd46 100644
--- a/src/lib/crypto/aes/aesopt.h
+++ b/src/lib/crypto/aes/aesopt.h
@@ -180,7 +180,9 @@
# define PLATFORM_BYTE_ORDER AES_BIG_ENDIAN
#elif defined(_MIPSEL)
# define PLATFORM_BYTE_ORDER AES_LITTLE_ENDIAN
-#elif !defined(WIN32)
+#elif defined(_WIN32)
+# define PLATFORM_BYTE_ORDER AES_LITTLE_ENDIAN
+#elif !defined(_WIN32)
# include <stdlib.h>
# if defined(HAVE_ENDIAN_H)
# include <endian.h>
@@ -236,19 +238,12 @@
#define PLATFORM_BYTE_ORDER AES_LITTLE_ENDIAN
#elif 0 /* **** EDIT HERE IF NECESSARY **** */
#define PLATFORM_BYTE_ORDER AES_BIG_ENDIAN
-#else
-# error "barf"
-/*#elif (('1234' >> 24) == '1')
-# define PLATFORM_BYTE_ORDER AES_LITTLE_ENDIAN
-#elif (('4321' >> 24) == '1')
-# define PLATFORM_BYTE_ORDER AES_BIG_ENDIAN*/
+#elif 1
+#define PLATFORM_BYTE_ORDER AES_LITTLE_ENDIAN
+#define UNKNOWN_BYTE_ORDER /* we're guessing */
#endif
#endif
-#if !defined(PLATFORM_BYTE_ORDER)
-# error Please set undetermined byte order (lines 229 or 231 of aesopt.h).
-#endif
-
/* 3. ASSEMBLER SUPPORT
If the assembler code is used for encryption and decryption this file only
@@ -352,6 +347,15 @@
#define SAFE_IO
#endif
+/*
+ * If PLATFORM_BYTE_ORDER does not match the actual machine byte
+ * order, the fast word-access code will cause incorrect results.
+ * Therefore, SAFE_IO is required when the byte order is unknown.
+ */
+#if !defined(SAFE_IO) && defined(UNKNOWN_BYTE_ORDER)
+# error "SAFE_IO must be defined if machine byte order is unknown."
+#endif
+
/* 7. LOOP UNROLLING
The code for encryption and decrytpion cycles through a number of rounds
diff --git a/src/util/db2/ChangeLog b/src/util/db2/ChangeLog
index 53542b9..4259b31 100644
--- a/src/util/db2/ChangeLog
+++ b/src/util/db2/ChangeLog
@@ -1,3 +1,7 @@
+2004-05-23 Ken Raeburn <raeburn@mit.edu>
+
+ * configure.in: Check for sys/param.h too.
+
2004-05-07 Ken Raeburn <raeburn@mit.edu>
* configure.in: Check for machine/endian.h too.
diff --git a/src/util/db2/configure.in b/src/util/db2/configure.in
index dc1fb1a..c5930b5 100644
--- a/src/util/db2/configure.in
+++ b/src/util/db2/configure.in
@@ -65,7 +65,8 @@ dnl checks for structures
dnl checks for compiler characteristics
dnl AC_C_BIGENDIAN - No, check at compile time; Darwin can build for multiple
dnl targets in one tree.
-AC_CHECK_HEADERS(endian.h machine/endian.h)
+AC_CHECK_HEADERS(endian.h machine/endian.h sys/param.h)
+dnl sys/param.h for AIX 4.3.3 (actually sys/machine.h)
dnl There's also sys/endian.h on IRIX, but we already check _MIPSE{L,B}.
AC_C_CONST
AC_CHECK_SIZEOF(int)
diff --git a/src/util/db2/include/ChangeLog b/src/util/db2/include/ChangeLog
index 1ad2200..676bbd4 100644
--- a/src/util/db2/include/ChangeLog
+++ b/src/util/db2/include/ChangeLog
@@ -1,3 +1,7 @@
+2004-05-23 Ken Raeburn <raeburn@mit.edu>
+
+ * db-int.h: Include sys/param.h if available.
+
2004-05-07 Ken Raeburn <raeburn@mit.edu>
* db-int.h: Include machine/endian.h if available. Check for
diff --git a/src/util/db2/include/db-int.h b/src/util/db2/include/db-int.h
index f50f6d0..bbb2292 100644
--- a/src/util/db2/include/db-int.h
+++ b/src/util/db2/include/db-int.h
@@ -51,6 +51,9 @@
#ifdef HAVE_MACHINE_ENDIAN_H
# include <machine/endian.h>
#endif
+#ifdef HAVE_SYS_PARAM_H
+# include <sys/param.h>
+#endif
/* Handle both BIG and LITTLE defined and BYTE_ORDER matches one, or
just one defined; both with and without leading underscores.