025901c345
Related to: <https://fedoraproject.org/wiki/Changes/PortingToModernC> <https://fedoraproject.org/wiki/Toolchain/PortingToModernC>
66 lines
1.8 KiB
Diff
66 lines
1.8 KiB
Diff
Avoid implicit function declarations, so that the configure probe
|
|
results do not change with future compilers.
|
|
|
|
Submitted upstream for discussion:
|
|
|
|
<https://www.sudo.ws/pipermail/sudo-workers/2023-April/001387.html>
|
|
|
|
|
|
diff --git a/configure b/configure
|
|
index d406eb77a22d3c3c..29483788443d2b21 100755
|
|
--- a/configure
|
|
+++ b/configure
|
|
@@ -31220,10 +31220,13 @@ else case e in #(
|
|
/* end confdefs.h. */
|
|
#include <sys/types.h>
|
|
#include <ldap.h>
|
|
+
|
|
+void *volatile ptr;
|
|
+
|
|
int
|
|
main (void)
|
|
{
|
|
-(void)ldap_init(0, 0)
|
|
+ptr = (void *) ldap_msgfree
|
|
;
|
|
return 0;
|
|
}
|
|
@@ -33914,7 +33917,7 @@ then :
|
|
else case e in #(
|
|
e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
/* end confdefs.h. */
|
|
-
|
|
+#include <stdio.h>
|
|
|
|
int
|
|
main (void)
|
|
diff --git a/m4/hardening.m4 b/m4/hardening.m4
|
|
index f7d2a8c2911ed9d6..1ebfd9fdaf461285 100644
|
|
--- a/m4/hardening.m4
|
|
+++ b/m4/hardening.m4
|
|
@@ -10,7 +10,7 @@ AC_DEFUN([SUDO_CHECK_HARDENING], [
|
|
[sudo_cv_use_fortify_source],
|
|
[AC_LINK_IFELSE([
|
|
AC_LANG_PROGRAM(
|
|
- [[]], [[char buf[4]; (void)sprintf(buf, "%s", "foo");]]
|
|
+ [[#include <string.h>]], [[char buf[4]; (void)sprintf(buf, "%s", "foo");]]
|
|
)],
|
|
[sudo_cv_use_fortify_source=yes],
|
|
[sudo_cv_use_fortify_source=no]
|
|
diff --git a/m4/ldap.m4 b/m4/ldap.m4
|
|
index 78c21e0bc0a1f65f..a6361df044d84f92 100644
|
|
--- a/m4/ldap.m4
|
|
+++ b/m4/ldap.m4
|
|
@@ -52,7 +52,10 @@ AC_DEFUN([SUDO_CHECK_LDAP], [
|
|
#include <lber.h>])
|
|
AC_CACHE_CHECK([whether lber.h is needed when including ldap.h], [sudo_cv_header_lber_h], [
|
|
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
|
|
-#include <ldap.h>]], [[(void)ldap_init(0, 0)]])], [
|
|
+#include <ldap.h>
|
|
+
|
|
+void *volatile ptr;
|
|
+]], [[ptr = (void *) ldap_msgfree]])], [
|
|
# No need to explicitly include lber.h when including ldap.h.
|
|
sudo_cv_header_lber_h=no
|
|
], [
|