From aa7584af27d0307e677fe539ba141e3592655093 Mon Sep 17 00:00:00 2001 From: Theo Buehler Date: Sat, 18 Nov 2023 10:53:09 +0100 Subject: [PATCH] Prefix some compat symbols with libressl_ See #928. This isn't a full fix, but should remove much of the friction already. --- include/compat/stdio.h | 2 ++ include/compat/stdlib.h | 10 ++++++++++ include/compat/string.h | 11 +++++++++++ 3 files changed, 23 insertions(+) diff --git a/include/compat/stdio.h b/include/compat/stdio.h index d5725c9ac9..4ddd63aee1 100644 --- a/include/compat/stdio.h +++ b/include/compat/stdio.h @@ -20,7 +20,9 @@ #ifndef HAVE_ASPRINTF #include +#define vasprintf libressl_vasprintf int vasprintf(char **str, const char *fmt, va_list ap); +#define asprintf libressl_asprintf int asprintf(char **str, const char *fmt, ...); #endif diff --git a/include/compat/stdlib.h b/include/compat/stdlib.h index 2eaea244c0..76dc07c35a 100644 --- a/include/compat/stdlib.h +++ b/include/compat/stdlib.h @@ -20,26 +20,36 @@ #include #ifndef HAVE_ARC4RANDOM_BUF +#define arc4random libressl_arc4random uint32_t arc4random(void); +#define arc4random_buf libressl_arc4random_buf void arc4random_buf(void *_buf, size_t n); +#define arc4random_uniform libressl_arc4random_uniform uint32_t arc4random_uniform(uint32_t upper_bound); #endif #ifndef HAVE_FREEZERO +#define freezero libressl_freezero void freezero(void *ptr, size_t sz); #endif #ifndef HAVE_GETPROGNAME +#define getprogname libressl_getprogname const char * getprogname(void); #endif +#ifndef HAVE_REALLOCARRAY +#define reallocarray libressl_reallocarray void *reallocarray(void *, size_t, size_t); +#endif #ifndef HAVE_RECALLOCARRAY +#define recallocarray libressl_recallocarray void *recallocarray(void *, size_t, size_t, size_t); #endif #ifndef HAVE_STRTONUM +#define strtonum libressl_strtonum long long strtonum(const char *nptr, long long minval, long long maxval, const char **errstr); #endif diff --git a/include/compat/string.h b/include/compat/string.h index 4bf7519b5b..6a82793f62 100644 --- a/include/compat/string.h +++ b/include/compat/string.h @@ -27,43 +27,54 @@ #endif #ifndef HAVE_STRCASECMP +#define strcasecmp libressl_strcasecmp int strcasecmp(const char *s1, const char *s2); +#define strncasecmp libressl_strncasecmp int strncasecmp(const char *s1, const char *s2, size_t len); #endif #ifndef HAVE_STRLCPY +#define strlcpy libressl_strlcpy size_t strlcpy(char *dst, const char *src, size_t siz); #endif #ifndef HAVE_STRLCAT +#define strlcat libressl_strlcat size_t strlcat(char *dst, const char *src, size_t siz); #endif #ifndef HAVE_STRNDUP +#define strndup libressl_strndup char * strndup(const char *str, size_t maxlen); /* the only user of strnlen is strndup, so only build it if needed */ #ifndef HAVE_STRNLEN +#define strnlen libressl_strnlen size_t strnlen(const char *str, size_t maxlen); #endif #endif #ifndef HAVE_STRSEP +#define strsep libressl_strsep char *strsep(char **stringp, const char *delim); #endif #ifndef HAVE_EXPLICIT_BZERO +#define explicit_bzero libressl_explicit_bzero void explicit_bzero(void *, size_t); #endif #ifndef HAVE_TIMINGSAFE_BCMP +#define timingsafe_bcmp libressl_timingsafe_bcmp int timingsafe_bcmp(const void *b1, const void *b2, size_t n); #endif #ifndef HAVE_TIMINGSAFE_MEMCMP +#define timingsafe_memcmp libressl_timingsafe_memcmp int timingsafe_memcmp(const void *b1, const void *b2, size_t len); #endif #ifndef HAVE_MEMMEM +#define memmem libressl_memmem void * memmem(const void *big, size_t big_len, const void *little, size_t little_len); #endif