diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2012-11-05 12:37:15 -0600 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2012-11-13 10:23:05 -0600 |
commit | d6fb09240913c9756de5f4a2462062008ebac252 (patch) | |
tree | c4a99509abd1dffdcd52353d551089f257b54c1e /src/hash.h | |
parent | e45423dd2c5ef8262f70605b81c6da0751d000a3 (diff) | |
download | libgit2-d6fb09240913c9756de5f4a2462062008ebac252.tar.gz |
Win32 CryptoAPI and CNG support for SHA1
Diffstat (limited to 'src/hash.h')
-rw-r--r-- | src/hash.h | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/src/hash.h b/src/hash.h index 33d7b20cd..2a9e19837 100644 --- a/src/hash.h +++ b/src/hash.h @@ -9,21 +9,32 @@ #include "git2/oid.h" +typedef struct git_hash_prov git_hash_prov; typedef struct git_hash_ctx git_hash_ctx; +#if defined(OPENSSL_SHA1) +# include "hash/hash_openssl.h" +#elif defined(WIN32_SHA1) +# include "hash/hash_win32.h" +#elif defined(PPC_SHA1) +# include "hash/hash_ppc.h" +#else +# include "hash/hash_generic.h" +#endif + typedef struct { void *data; size_t len; } git_buf_vec; -git_hash_ctx *git_hash_new_ctx(void); -void git_hash_free_ctx(git_hash_ctx *ctx); +git_hash_ctx *git_hash_ctx_new(void); +void git_hash_ctx_free(git_hash_ctx *ctx); -void git_hash_init(git_hash_ctx *c); -void git_hash_update(git_hash_ctx *c, const void *data, size_t len); -void git_hash_final(git_oid *out, git_hash_ctx *c); +int git_hash_init(git_hash_ctx *c); +int git_hash_update(git_hash_ctx *c, const void *data, size_t len); +int git_hash_final(git_oid *out, git_hash_ctx *c); -void git_hash_buf(git_oid *out, const void *data, size_t len); -void git_hash_vec(git_oid *out, git_buf_vec *vec, size_t n); +int git_hash_buf(git_oid *out, const void *data, size_t len); +int git_hash_vec(git_oid *out, git_buf_vec *vec, size_t n); #endif /* INCLUDE_hash_h__ */ |