https://bugs.openldap.org/show_bug.cgi?id=9348
Issue ID: 9348 Summary: libldap uses deprecated symbols sys_errlist and sys_nerr Product: OpenLDAP Version: 2.4.53 Hardware: All OS: All Status: UNCONFIRMED Severity: normal Priority: --- Component: libraries Assignee: bugs@openldap.org Reporter: ditu.alexandru@gmail.com Target Milestone: ---
Starting with libc >= 2.32 the symbols sys_errlist and sys_nerr are removed:
From the release notes (https://sourceware.org/git/?p=glibc.git;a=blob_plain;f=NEWS;hb=HEAD):
* The deprecated symbols sys_errlist, _sys_errlist, sys_nerr, and _sys_nerr are no longer available to newly linked binaries, and their declarations have been removed from from <stdio.h>. They are exported solely as compatibility symbols to support old binaries. All programs should use strerror or strerror_r instead.
Their usage should be removed from libldap (include/ac/errno.h) and replaced with strerror or strerror_r.
Otherwise any library that uses libldap compiled with libc < 2.32 won't run on systems that use newer libc versions (>= 2.32).