summaryrefslogtreecommitdiffstats
path: root/cpukit/include/sha512t.h
diff options
context:
space:
mode:
authorAlan Somers <asomers@FreeBSD.org>2016-10-18 23:20:49 +0000
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-09-08 16:14:56 +0200
commit48f7979f5d858900b729db3f7dcc3fa84d496f53 (patch)
tree298cd5857e762cf33b2343ad40baedf57b49b835 /cpukit/include/sha512t.h
parentRetune SHA2 code for improved performance on CPUs (diff)
downloadrtems-48f7979f5d858900b729db3f7dcc3fa84d496f53.tar.bz2
Fix C++ includability of crypto headers with static array sizes
C99 allows array function parameters to use the static keyword for their sizes. This tells the compiler that the parameter will have at least the specified size, and calling code will fail to compile if that guarantee is not met. However, this syntax is not legal in C++. This commit reverts r300824, which worked around the problem for sys/sys/md5.h only, and introduces a new macro: min_size(). min_size(x) can be used in headers as a static array size, but will still compile in C++ mode. Reviewed by: cem, ed MFC after: 4 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D8277
Diffstat (limited to '')
-rw-r--r--cpukit/include/sha512t.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/cpukit/include/sha512t.h b/cpukit/include/sha512t.h
index 20f206f141..f48606a393 100644
--- a/cpukit/include/sha512t.h
+++ b/cpukit/include/sha512t.h
@@ -44,7 +44,8 @@ __BEGIN_DECLS
void SHA512_224_Init(SHA512_CTX *);
void SHA512_224_Update(SHA512_CTX *, const void *, size_t);
-void SHA512_224_Final(unsigned char [static SHA512_224_DIGEST_LENGTH], SHA512_CTX *);
+void SHA512_224_Final(unsigned char [__min_size(SHA512_224_DIGEST_LENGTH)],
+ SHA512_CTX *);
#ifndef _KERNEL
char *SHA512_224_End(SHA512_CTX *, char *);
char *SHA512_224_Data(const void *, unsigned int, char *);
@@ -53,7 +54,8 @@ char *SHA512_224_FileChunk(const char *, char *, off_t, off_t);
#endif
void SHA512_256_Init(SHA512_CTX *);
void SHA512_256_Update(SHA512_CTX *, const void *, size_t);
-void SHA512_256_Final(unsigned char [static SHA512_256_DIGEST_LENGTH], SHA512_CTX *);
+void SHA512_256_Final(unsigned char [__min_size(SHA512_256_DIGEST_LENGTH)],
+ SHA512_CTX *);
#ifndef _KERNEL
char *SHA512_256_End(SHA512_CTX *, char *);
char *SHA512_256_Data(const void *, unsigned int, char *);