diff options
author | Ævar Arnfjörð Bjarmason <avarab@gmail.com> | 2017-05-17 13:50:06 +0300 |
---|---|---|
committer | Marc Stevens <cr-marcstevens@users.noreply.github.com> | 2017-05-18 23:04:04 +0300 |
commit | b45fcefc71270d9a159028c22e6d36c3817da188 (patch) | |
tree | d85654fd3dd8b3e5b93226e9d71df632edb2bc62 /lib/ubc_check.h | |
parent | db45d67ada5ed259840b1f9eee4bba1131f457e7 (diff) |
Amend the lib/ code for easier inclusion in other programs
This introduces no functional changes, but allows the lib/ code to be
used as-is in other programs without patching these files directly,
instead those programs can define a few variables to inject their
custom code into this code.
With these changes the git project can use this code without any
modifications to the upstream code. The corresponding git mailing list
thread discussing that is at "[PATCH/RFC 0/3] Use
sha1collisiondetection as a submodule"[1]. The defines used by git in
that patch are:
-DSHA1DC_NO_STANDARD_INCLUDES \
-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0 \
-DSHA1DC_CUSTOM_INCLUDE_SHA1_C="\"cache.h\"" \
-DSHA1DC_CUSTOM_TRAILING_INCLUDE_SHA1_C="\"../sha1dc_git.c\"" \
-DSHA1DC_CUSTOM_TRAILING_INCLUDE_SHA1_H="\"../sha1dc_git.h\"" \
-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C="\"git-compat-util.h\""
I.e. all of these except SHA1DC_CUSTOM_TRAILING_INCLUDE_UBC_CHECK_[CH]
are used by git. I've merely added those for completeness since other
projects doing similar customization might want to use them.
The monkeypatches the git project was using previously were:
- https://github.com/git/git/commit/45a574eec8
- https://github.com/git/git/commit/c0c20060af
- https://github.com/git/git/commit/8325e43b82
The entire paragraph being added to the README file was authored by
Dan Shumow. See
https://github.com/cr-marcstevens/sha1collisiondetection/pull/31.
1. <20170517113824.31700-1-avarab@gmail.com>
(https://public-inbox.org/git/20170517113824.31700-1-avarab@gmail.com/)
Diffstat (limited to 'lib/ubc_check.h')
-rw-r--r-- | lib/ubc_check.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/ubc_check.h b/lib/ubc_check.h index ff567c6..d7e17dc 100644 --- a/lib/ubc_check.h +++ b/lib/ubc_check.h @@ -27,7 +27,9 @@ extern "C" { #endif +#ifndef SHA1DC_NO_STANDARD_INCLUDES #include <stdint.h> +#endif #define DVMASKSIZE 1 typedef struct { int dvType; int dvK; int dvB; int testt; int maski; int maskb; uint32_t dm[80]; } dv_info_t; @@ -43,4 +45,8 @@ void ubc_check(const uint32_t W[80], uint32_t dvmask[DVMASKSIZE]); } #endif +#ifdef SHA1DC_CUSTOM_TRAILING_INCLUDE_UBC_CHECK_H +#include SHA1DC_CUSTOM_TRAILING_INCLUDE_UBC_CHECK_H +#endif + #endif |