Commit 22fbd623 authored by Guillem Jover's avatar Guillem Jover

Handle several functions now being provided by glibc

We mention that these are now superseded by the glibc implementations,
make the headers cope with already declared functions on glibc-based
systems, and document this in the man pages.
parent b4f7c065
......@@ -67,7 +67,9 @@ int sradixsort(const unsigned char **base, int nmemb,
const unsigned char *table, unsigned endbyte);
void *reallocf(void *ptr, size_t size);
#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 26)
void *reallocarray(void *ptr, size_t nmemb, size_t size);
long long strtonum(const char *nptr, long long minval, long long maxval,
const char **errstr);
......@@ -42,7 +42,9 @@ size_t strlcat(char *dst, const char *src, size_t siz);
char *strnstr(const char *str, const char *find, size_t str_len);
void strmode(mode_t mode, char *str);
#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 25)
void explicit_bzero(void *buf, size_t len);
......@@ -72,4 +72,5 @@ pass, making it useful for clearing sensitive memory such as a password.
.Fn explicit_bzero
function first appeared in
.Ox 5.5 .
.Ox 5.5 ,
glibc 2.25.
......@@ -150,13 +150,36 @@ function can be used.
Otherwise the code needs to be prepared for neither of these functions being
Some functions have been superseded by implementations in other system
libraries, and might disappear on the next SONAME bump, assuming those
other implementation have widespread deployment, or the implementations
are present in all major
.Nm libc
for example.
In addition, the MD5 set of digest funtions are now provided by the
.Bl -tag -width 4m -compact
.It Fn MD5Init
.It Fn MD5Update
.It Fn MD5Pad
.It Fn MD5Final
.It Fn MD5Transform
.It Fn MD5End
.It Fn MD5File
.It Fn MD5FileChunk
.It Fn MD5Data
The set of MD5 digest functions are now provided by the
.Nm libmd
companion library, so it is advised to use that instead, as the ones
provided in
.Nm libbsd
might disappear on the next SONAME bump.
companion library, so it is advised to use that instead.
.It Fn explicit_bzero
This function is provided by
.Nm glibc
.It Fn reallocarray
This function is provided by
.Nm glibc
.Xr arc4random 3bsd ,
.Xr bitstring 3bsd ,
......@@ -102,4 +102,5 @@ is set to
.Fn reallocarray
appeared in
.Ox 5.6 .
.Ox 5.6 ,
glibc 2.26.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment