blob: f6f880cabea382dfbbd4306caddc6c22e780a2c8 [file] [log] [blame]
Takashi Iwai36f048c2017-08-15 14:04:16 +02001/* Plumbing with collition-detecting SHA1 code */
Ævar Arnfjörð Bjarmasona0103912017-05-20 11:54:28 +00002
Ævar Arnfjörð Bjarmasonaa9b3b22017-12-08 22:29:59 +00003#ifdef DC_SHA1_EXTERNAL
Takashi Iwai3964cbb2017-08-15 14:04:17 +02004#include <sha1dc/sha1.h>
Ævar Arnfjörð Bjarmasonaa9b3b22017-12-08 22:29:59 +00005#elif defined(DC_SHA1_SUBMODULE)
6#include "sha1collisiondetection/lib/sha1.h"
Takashi Iwai36f048c2017-08-15 14:04:16 +02007#else
8#include "sha1dc/sha1.h"
9#endif
10
Takashi Iwai3964cbb2017-08-15 14:04:17 +020011#ifdef DC_SHA1_EXTERNAL
12void git_SHA1DCInit(SHA1_CTX *);
13#else
14#define git_SHA1DCInit SHA1DCInit
15#endif
16
Ævar Arnfjörð Bjarmasona0103912017-05-20 11:54:28 +000017void git_SHA1DCFinal(unsigned char [20], SHA1_CTX *);
Ævar Arnfjörð Bjarmasona0103912017-05-20 11:54:28 +000018void git_SHA1DCUpdate(SHA1_CTX *ctx, const void *data, unsigned long len);
19
Ævar Arnfjörð Bjarmasondc1cf352022-11-07 22:23:10 +010020#define platform_SHA_IS_SHA1DC /* used by "test-tool sha1-is-sha1dc" */
Taylor Blau4c61a1d2024-09-26 11:22:44 -040021
22#ifndef platform_SHA_CTX
Ævar Arnfjörð Bjarmasona0103912017-05-20 11:54:28 +000023#define platform_SHA_CTX SHA1_CTX
Takashi Iwai3964cbb2017-08-15 14:04:17 +020024#define platform_SHA1_Init git_SHA1DCInit
Ævar Arnfjörð Bjarmasona0103912017-05-20 11:54:28 +000025#define platform_SHA1_Update git_SHA1DCUpdate
26#define platform_SHA1_Final git_SHA1DCFinal
Taylor Blau4c61a1d2024-09-26 11:22:44 -040027#endif