mirror of
https://git.proxmox.com/git/libgit2
synced 2025-06-16 00:57:08 +00:00
Merge pull request #1012 from carlosmn/libcrypto-sha
Use libcrypto's SHA-1 implementation when linking to it
This commit is contained in:
commit
81e7b10a15
@ -40,8 +40,10 @@ ENDIF()
|
|||||||
IF (SHA1_TYPE STREQUAL "ppc")
|
IF (SHA1_TYPE STREQUAL "ppc")
|
||||||
ADD_DEFINITIONS(-DPPC_SHA1)
|
ADD_DEFINITIONS(-DPPC_SHA1)
|
||||||
FILE(GLOB SRC_SHA1 src/ppc/*.c src/ppc/*.S)
|
FILE(GLOB SRC_SHA1 src/ppc/*.c src/ppc/*.S)
|
||||||
|
ELSEIF (OPENSSL_FOUND) # libcrypto's implementation is faster than ours
|
||||||
|
ADD_DEFINITIONS(-DOPENSSL_SHA)
|
||||||
ELSE ()
|
ELSE ()
|
||||||
SET (SRC_SHA1)
|
FILE(GLOB SRC_SHA1 src/sha1/*.c)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
IF (NOT WIN32)
|
IF (NOT WIN32)
|
||||||
@ -193,7 +195,7 @@ IF (BUILD_CLAR)
|
|||||||
DEPENDS ${CLAR_PATH}/clar ${SRC_TEST}
|
DEPENDS ${CLAR_PATH}/clar ${SRC_TEST}
|
||||||
WORKING_DIRECTORY ${CLAR_PATH}
|
WORKING_DIRECTORY ${CLAR_PATH}
|
||||||
)
|
)
|
||||||
ADD_EXECUTABLE(libgit2_clar ${SRC} ${CLAR_PATH}/clar_main.c ${SRC_TEST} ${SRC_ZLIB} ${SRC_HTTP} ${SRC_REGEX})
|
ADD_EXECUTABLE(libgit2_clar ${SRC} ${CLAR_PATH}/clar_main.c ${SRC_TEST} ${SRC_ZLIB} ${SRC_HTTP} ${SRC_REGEX} ${SRC_SHA1})
|
||||||
TARGET_LINK_LIBRARIES(libgit2_clar ${CMAKE_THREAD_LIBS_INIT} ${SSL_LIBRARIES})
|
TARGET_LINK_LIBRARIES(libgit2_clar ${CMAKE_THREAD_LIBS_INIT} ${SSL_LIBRARIES})
|
||||||
|
|
||||||
IF (MSVC)
|
IF (MSVC)
|
||||||
|
@ -8,12 +8,17 @@
|
|||||||
#ifndef INCLUDE_sha1_h__
|
#ifndef INCLUDE_sha1_h__
|
||||||
#define INCLUDE_sha1_h__
|
#define INCLUDE_sha1_h__
|
||||||
|
|
||||||
|
#ifdef OPENSSL_SHA
|
||||||
|
# include <openssl/sha.h>
|
||||||
|
|
||||||
|
#else
|
||||||
typedef struct {
|
typedef struct {
|
||||||
unsigned long long size;
|
unsigned long long size;
|
||||||
unsigned int H[5];
|
unsigned int H[5];
|
||||||
unsigned int W[16];
|
unsigned int W[16];
|
||||||
} blk_SHA_CTX;
|
} blk_SHA_CTX;
|
||||||
|
|
||||||
|
|
||||||
void git__blk_SHA1_Init(blk_SHA_CTX *ctx);
|
void git__blk_SHA1_Init(blk_SHA_CTX *ctx);
|
||||||
void git__blk_SHA1_Update(blk_SHA_CTX *ctx, const void *dataIn, size_t len);
|
void git__blk_SHA1_Update(blk_SHA_CTX *ctx, const void *dataIn, size_t len);
|
||||||
void git__blk_SHA1_Final(unsigned char hashout[20], blk_SHA_CTX *ctx);
|
void git__blk_SHA1_Final(unsigned char hashout[20], blk_SHA_CTX *ctx);
|
||||||
@ -23,4 +28,6 @@ void git__blk_SHA1_Final(unsigned char hashout[20], blk_SHA_CTX *ctx);
|
|||||||
#define SHA1_Update git__blk_SHA1_Update
|
#define SHA1_Update git__blk_SHA1_Update
|
||||||
#define SHA1_Final git__blk_SHA1_Final
|
#define SHA1_Final git__blk_SHA1_Final
|
||||||
|
|
||||||
|
#endif // OPENSSL_SHA
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user