diff --git a/include/sha512.h b/include/sha512.h index 7a79c6d..89a266c 100644 --- a/include/sha512.h +++ b/include/sha512.h @@ -12,6 +12,10 @@ typedef struct sha512_functions_ { int(*_ed_sha512_final)(sha512_context*, unsigned char *); int(*_ed_sha512_update)(sha512_context*, const unsigned char *, size_t); } sha512_functions; + +#ifdef WIN32 +__declspec(dllexport) +#endif extern sha512_functions _ed_sha512_functions; inline void _ed_sha512_validate() { diff --git a/src/sha512.c b/src/sha512.c index 0d33ce8..7b4ec4d 100644 --- a/src/sha512.c +++ b/src/sha512.c @@ -283,6 +283,9 @@ int __ed_sha512_update(sha512_context *md, const unsigned char *in, size_t inlen return _ed_sha512_update(md->context, in, inlen); } +#ifdef WIN32 +__declspec(dllexport) +#endif sha512_functions _ed_sha512_functions = { __ed_sha512_init, __ed_sha512_final, diff --git a/src/sha512_openssl.c b/src/sha512_openssl.c index e4f0082..46d9d01 100644 --- a/src/sha512_openssl.c +++ b/src/sha512_openssl.c @@ -23,6 +23,10 @@ int _ed_sha512_update(sha512_context* md, const unsigned char *in, size_t inlen) return SHA512_Update(md->context, in, inlen) != 1; /* Returns 0 on success */ } + +#ifdef WIN32 +__declspec(dllexport) +#endif sha512_functions _ed_sha512_functions = { _ed_sha512_init, _ed_sha512_final,