From 981fc3618a78970cca6327666366a7056edd3ebf Mon Sep 17 00:00:00 2001 From: Brent Cook <bcook@openbsd.org> Date: Mon, 28 Jul 2014 12:09:38 -0500 Subject: Guard individual compatibility header prototypes. This is to avoid redefining prototypes from the libc headers. Also, simplify the autoconf function checks and remove some copy/paste errors checking for 'write'. ok wouter@ --- include/stdlib.h | 8 ++++++++ include/string.h | 15 ++++++++++++++- include/unistd.h | 5 +++++ 3 files changed, 27 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/stdlib.h b/include/stdlib.h index 6c2de93..c314f38 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -7,10 +7,18 @@ #include <sys/time.h> #include <stdint.h> +#ifdef NO_ARC4RANDOM_BUF uint32_t arc4random(void); void arc4random_buf(void *_buf, size_t n); +#endif + +#ifdef NO_REALLOCARRAY void *reallocarray(void *, size_t, size_t); +#endif + +#ifdef NO_STRTONUM long long strtonum(const char *nptr, long long minval, long long maxval, const char **errstr); +#endif #endif diff --git a/include/string.h b/include/string.h index cd3430a..c4bf1e4 100644 --- a/include/string.h +++ b/include/string.h @@ -12,21 +12,34 @@ #include <strings.h> #endif +#ifdef NO_STRLCPY size_t strlcpy(char *dst, const char *src, size_t siz); +#endif +#ifdef NO_STRLCAT size_t strlcat(char *dst, const char *src, size_t siz); +#endif +#ifdef NO_STRNDUP char * strndup(const char *str, size_t maxlen); - size_t strnlen(const char *str, size_t maxlen); +#endif +#ifdef NO_EXPLICIT_BZERO void explicit_bzero(void *, size_t); +#endif +#ifdef NO_TIMINGSAFE_BCMP int timingsafe_bcmp(const void *b1, const void *b2, size_t n); +#endif +#ifdef NO_TIMINGSAFE_MEMCMP int timingsafe_memcmp(const void *b1, const void *b2, size_t len); +#endif +#ifdef NO_MEMMEM void * memmem(const void *big, size_t big_len, const void *little, size_t little_len); +#endif #endif diff --git a/include/unistd.h b/include/unistd.h index ae82b95..037b11a 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -3,7 +3,12 @@ #ifndef LIBCRYPTOCOMPAT_UNISTD_H #define LIBCRYPTOCOMPAT_UNISTD_H +#ifdef NO_GETENTROPY int getentropy(void *buf, size_t buflen); +#endif + +#ifdef NO_ISSETUGID int issetugid(void); +#endif #endif -- cgit v1.2.3-55-g6feb