A v2 addressing comments to the v1, tbdiff below. Just fixes the
subject line on 1/3 & gets rid of the redundant _BIG_ENDIAN detection
for Solaris, we can just use __sparc (and indeed we did before this).
Junio C Hamano (1):
sha1collisiondetection: automatically enable when submodule is
populated
Ævar Arnfjörð Bjarmason (2):
sha1dc: correct endian detection for Solaris (and others?)
sha1dc: optionally use sha1collisiondetection as a submodule
.gitmodules | 4 +++
Makefile | 16 +++++++++++
hash.h | 4 +++
sha1collisiondetection | 1 +
sha1dc/sha1.c | 73 +++++++++++++++++++++++++++++++++++++-------------
5 files changed, 79 insertions(+), 19 deletions(-)
create mode 100644 .gitmodules
create mode 160000 sha1collisiondetection
@@ -1,6 +1,6 @@
Author: Ævar Arnfjörð Bjarmason <[email protected]>
- sha1dc: update from my PR #36
+ sha1dc: correct endian detection for Solaris (and others?)
Update sha1dc from my PR #36[1] which'll hopefully be integrated by
upstream soon.
@@ -96,22 +96,15 @@
+
+#if defined(SHA1DC_ON_INTEL_LIKE_PROCESSOR)
+/*
-+ * As a last resort before we fall back on _BIG_ENDIAN or whatever
-+ * else we're not 100% sure about below, we blacklist specific
-+ * processors here. We could add more, see
-+ * e.g. https://wiki.debian.org/ArchitectureSpecificsMemo
++ * As a last resort before we do anything else we're not 100% sure
++ * about below, we blacklist specific processors here. We could add
++ * more, see e.g. https://wiki.debian.org/ArchitectureSpecificsMemo
+ */
+#else /* Not under GCC-alike or glibc or <processor whitelist> or
<processor blacklist> */
+
-+#ifdef _BIG_ENDIAN
-+/*
-+ * Solaris / illumos defines either _LITTLE_ENDIAN or _BIG_ENDIAN in
-+ * <sys/isa_defs.h>.
-+ */
-+#define SHA1DC_BIGENDIAN
-+#else
++/* We do nothing more here for now */
+/*#error "Uncomment this to see if you fall through all the detection"*/
-+#endif /* Big Endian because of _BIG_ENDIAN (Solaris)*/
++
+#endif /* !SHA1DC_ON_INTEL_LIKE_PROCESSOR */
+#endif /* Big Endian under whitelist of processors */
+#endif /* Big Endian under glibc */
2: 63a5d0cb2a ! 2: 28750d3c24 sha1dc: optionally use sha1collisiondetection as
a submodule
@@ -79,4 +79,4 @@
--- /dev/null
+++ b/sha1collisiondetection
@@
-+Subproject commit 56ab30c4c998e1e7f3075705087a2f0c4c4202d7
++Subproject commit 9d3a0b3783afab335a1819543d039cf2980577bb
--
2.13.1.611.g7e3b11ae1