- Functions requiring File System functions can now be disables by undefining POLARSSL_FS_IO
diff --git a/library/md_wrap.c b/library/md_wrap.c index bb87c63..64d8bb6 100644 --- a/library/md_wrap.c +++ b/library/md_wrap.c
@@ -58,6 +58,17 @@ md2_finish( (md2_context *) ctx, output ); } +int md2_file_wrap( const char *path, unsigned char *output ) +{ +#if defined(POLARSSL_FS_IO) + return md2_file( path, output ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif +} + static void md2_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen ) { md2_hmac_starts( (md2_context *) ctx, key, keylen ); @@ -96,7 +107,7 @@ md2_update_wrap, md2_finish_wrap, md2, - md2_file, + md2_file_wrap, md2_hmac_starts_wrap, md2_hmac_update_wrap, md2_hmac_finish_wrap, @@ -125,6 +136,17 @@ md4_finish( (md4_context *) ctx, output ); } +int md4_file_wrap( const char *path, unsigned char *output ) +{ +#if defined(POLARSSL_FS_IO) + return md4_file( path, output ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif +} + void md4_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen ) { md4_hmac_starts( (md4_context *) ctx, key, keylen ); @@ -163,7 +185,7 @@ md4_update_wrap, md4_finish_wrap, md4, - md4_file, + md4_file_wrap, md4_hmac_starts_wrap, md4_hmac_update_wrap, md4_hmac_finish_wrap, @@ -192,6 +214,17 @@ md5_finish( (md5_context *) ctx, output ); } +int md5_file_wrap( const char *path, unsigned char *output ) +{ +#if defined(POLARSSL_FS_IO) + return md5_file( path, output ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif +} + static void md5_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen ) { md5_hmac_starts( (md5_context *) ctx, key, keylen ); @@ -230,7 +263,7 @@ md5_update_wrap, md5_finish_wrap, md5, - md5_file, + md5_file_wrap, md5_hmac_starts_wrap, md5_hmac_update_wrap, md5_hmac_finish_wrap, @@ -259,6 +292,17 @@ sha1_finish( (sha1_context *) ctx, output ); } +int sha1_file_wrap( const char *path, unsigned char *output ) +{ +#if defined(POLARSSL_FS_IO) + return sha1_file( path, output ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif +} + void sha1_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen ) { sha1_hmac_starts( (sha1_context *) ctx, key, keylen ); @@ -297,7 +341,7 @@ sha1_update_wrap, sha1_finish_wrap, sha1, - sha1_file, + sha1_file_wrap, sha1_hmac_starts_wrap, sha1_hmac_update_wrap, sha1_hmac_finish_wrap, @@ -337,7 +381,13 @@ int sha224_file_wrap( const char *path, unsigned char *output ) { +#if defined(POLARSSL_FS_IO) return sha2_file( path, output, 1 ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif } void sha224_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen ) @@ -418,7 +468,13 @@ int sha256_file_wrap( const char *path, unsigned char *output ) { +#if defined(POLARSSL_FS_IO) return sha2_file( path, output, 0 ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif } void sha256_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen ) @@ -503,7 +559,13 @@ int sha384_file_wrap( const char *path, unsigned char *output ) { +#if defined(POLARSSL_FS_IO) return sha4_file( path, output, 1 ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif } void sha384_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen ) @@ -584,7 +646,13 @@ int sha512_file_wrap( const char *path, unsigned char *output ) { +#if defined(POLARSSL_FS_IO) return sha4_file( path, output, 0 ); +#else + ((void) path); + ((void) output); + return POLARSSL_ERR_MD_FEATURE_UNAVAILABLE; +#endif } void sha512_hmac_starts_wrap( void *ctx, const unsigned char *key, size_t keylen )