Arjun Shankar 4875b14
Submitted upstream: https://github.com/proftpd/proftpd/pull/1667
Arjun Shankar 4875b14
Arjun Shankar 4875b14
From: Arjun Shankar <arjun@redhat.com>
Arjun Shankar 4875b14
Date: Fri, 5 May 2023 15:35:56 +0200
Arjun Shankar 4875b14
Subject: [PATCH] configure: Remove several implicit function declarations
Arjun Shankar 4875b14
Arjun Shankar 4875b14
During configure, some checks omit the corresponding include. A compiler
Arjun Shankar 4875b14
defaulting to C99 mode could cause those checks to fail since C99 does
Arjun Shankar 4875b14
not allow implicit function declarations. This commit fixes the same.
Arjun Shankar 4875b14
The configure script is re-generated.
Arjun Shankar 4875b14
Arjun Shankar 4875b14
Signed-off-by: Arjun Shankar <arjun@redhat.com>
Arjun Shankar 4875b14
---
Arjun Shankar 4875b14
 configure    | 66 +++++++++++++++++++++++++++++++++++++++----
Arjun Shankar 4875b14
 configure.in | 80 ++++++++++++++++++++++++++++++++++++++++++++--------
Arjun Shankar 4875b14
 2 files changed, 129 insertions(+), 17 deletions(-)
Arjun Shankar 4875b14
Arjun Shankar 4875b14
diff --git a/configure b/configure
Arjun Shankar 4875b14
index 25c8b8a6d..41f019c65 100755
Arjun Shankar 4875b14
--- a/configure
Arjun Shankar 4875b14
+++ b/configure
Arjun Shankar 4875b14
@@ -18305,6 +18305,20 @@ _ACEOF
Arjun Shankar 4875b14
 fi
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
+for ac_header in stddef.h crypt.h netdb.h arpa/inet.h sys/socket.h
Arjun Shankar 4875b14
+do :
Arjun Shankar 4875b14
+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
Arjun Shankar 4875b14
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
Arjun Shankar 4875b14
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
Arjun Shankar 4875b14
+  cat >>confdefs.h <<_ACEOF
Arjun Shankar 4875b14
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
Arjun Shankar 4875b14
+_ACEOF
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+fi
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+done
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for standalone crypt" >&5
Arjun Shankar 4875b14
 $as_echo_n "checking for standalone crypt... " >&6; }
Arjun Shankar 4875b14
 if ${pr_cv_lib_standalone_crypt+:} false; then :
Arjun Shankar 4875b14
@@ -18313,10 +18327,19 @@ else
Arjun Shankar 4875b14
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
Arjun Shankar 4875b14
 /* end confdefs.h.  */
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_CRYPT_H
Arjun Shankar 4875b14
+      # include <crypt.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
 int
Arjun Shankar 4875b14
 main ()
Arjun Shankar 4875b14
 {
Arjun Shankar 4875b14
-crypt();
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+      crypt(NULL, NULL);
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
   ;
Arjun Shankar 4875b14
   return 0;
Arjun Shankar 4875b14
 }
Arjun Shankar 4875b14
@@ -18388,10 +18411,19 @@ else
Arjun Shankar 4875b14
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
Arjun Shankar 4875b14
 /* end confdefs.h.  */
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_NETDB_H
Arjun Shankar 4875b14
+      # include <netdb.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
 int
Arjun Shankar 4875b14
 main ()
Arjun Shankar 4875b14
 {
Arjun Shankar 4875b14
-gethostbyname();
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+      gethostbyname(NULL);
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
   ;
Arjun Shankar 4875b14
   return 0;
Arjun Shankar 4875b14
 }
Arjun Shankar 4875b14
@@ -18508,10 +18540,19 @@ else
Arjun Shankar 4875b14
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
Arjun Shankar 4875b14
 /* end confdefs.h.  */
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_ARPA_INET_H
Arjun Shankar 4875b14
+      # include <arpa/inet.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
 int
Arjun Shankar 4875b14
 main ()
Arjun Shankar 4875b14
 {
Arjun Shankar 4875b14
-inet_aton();
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+      inet_aton(NULL, NULL);
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
   ;
Arjun Shankar 4875b14
   return 0;
Arjun Shankar 4875b14
 }
Arjun Shankar 4875b14
@@ -18584,10 +18625,16 @@ else
Arjun Shankar 4875b14
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
Arjun Shankar 4875b14
 /* end confdefs.h.  */
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
+      #if HAVE_NETDB_H
Arjun Shankar 4875b14
+      # include <netdb.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
 int
Arjun Shankar 4875b14
 main ()
Arjun Shankar 4875b14
 {
Arjun Shankar 4875b14
-gethostent();
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+      gethostent();
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
   ;
Arjun Shankar 4875b14
   return 0;
Arjun Shankar 4875b14
 }
Arjun Shankar 4875b14
@@ -18659,10 +18706,19 @@ else
Arjun Shankar 4875b14
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
Arjun Shankar 4875b14
 /* end confdefs.h.  */
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_SYS_SOCKET_H
Arjun Shankar 4875b14
+      # include <sys/socket.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
 int
Arjun Shankar 4875b14
 main ()
Arjun Shankar 4875b14
 {
Arjun Shankar 4875b14
-bind();
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
+      bind(0, NULL, 0);
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
   ;
Arjun Shankar 4875b14
   return 0;
Arjun Shankar 4875b14
 }
Arjun Shankar 4875b14
diff --git a/configure.in b/configure.in
Arjun Shankar 4875b14
index 105fda3b0..f88ce1025 100644
Arjun Shankar 4875b14
--- a/configure.in
Arjun Shankar 4875b14
+++ b/configure.in
Arjun Shankar 4875b14
@@ -1476,18 +1476,42 @@ AC_ARG_ENABLE(transfer-buffer-size,
Arjun Shankar 4875b14
   ])
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 dnl Checks for libraries.  Yes, this is the hard way, but it's necessary.
Arjun Shankar 4875b14
+AC_CHECK_HEADERS(stddef.h crypt.h netdb.h arpa/inet.h sys/socket.h)
Arjun Shankar 4875b14
+
Arjun Shankar 4875b14
 AC_CACHE_CHECK(for standalone crypt,pr_cv_lib_standalone_crypt,
Arjun Shankar 4875b14
-  AC_TRY_LINK(,[crypt();],
Arjun Shankar 4875b14
-  	pr_cv_lib_standalone_crypt="yes", pr_cv_lib_standalone_crypt="no" ))
Arjun Shankar 4875b14
+  AC_TRY_LINK(
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_CRYPT_H
Arjun Shankar 4875b14
+      # include <crypt.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      crypt(NULL, NULL);
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_crypt="yes", pr_cv_lib_standalone_crypt="no" ))
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 if test "$pr_cv_lib_standalone_crypt" = "no"; then
Arjun Shankar 4875b14
   AC_CHECK_LIB(crypt, crypt)
Arjun Shankar 4875b14
 fi
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 AC_CACHE_CHECK(for standalone gethostbyname,pr_cv_lib_standalone_gethost,
Arjun Shankar 4875b14
-  AC_TRY_LINK(,[gethostbyname();],
Arjun Shankar 4875b14
-  	pr_cv_lib_standalone_gethost="yes",
Arjun Shankar 4875b14
-	pr_cv_lib_standalone_gethost="no" ))
Arjun Shankar 4875b14
+  AC_TRY_LINK(
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_NETDB_H
Arjun Shankar 4875b14
+      # include <netdb.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      gethostbyname(NULL);
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_gethost="yes",
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_gethost="no" ))
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 if test "$pr_cv_lib_standalone_gethost" = "no"; then
Arjun Shankar 4875b14
   AC_CHECK_LIB(resolv, gethostbyname)
Arjun Shankar 4875b14
@@ -1495,25 +1519,57 @@ if test "$pr_cv_lib_standalone_gethost" = "no"; then
Arjun Shankar 4875b14
 fi
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 AC_CACHE_CHECK(for standalone inet_aton,pr_cv_lib_standalone_aton,
Arjun Shankar 4875b14
-  AC_TRY_LINK(,[inet_aton();],
Arjun Shankar 4875b14
-  	pr_cv_lib_standalone_aton="yes",
Arjun Shankar 4875b14
-	pr_cv_lib_standalone_aton="no" ))
Arjun Shankar 4875b14
+  AC_TRY_LINK(
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_ARPA_INET_H
Arjun Shankar 4875b14
+      # include <arpa/inet.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      inet_aton(NULL, NULL);
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_aton="yes",
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_aton="no" ))
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 if test "$pr_cv_lib_standalone_aton" = "no"; then
Arjun Shankar 4875b14
   AC_CHECK_LIB(bind, inet_aton)
Arjun Shankar 4875b14
 fi
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 AC_CACHE_CHECK(for standalone nsl functions,pr_cv_lib_standalone_nsl,[
Arjun Shankar 4875b14
-  AC_TRY_LINK(,[gethostent();],
Arjun Shankar 4875b14
-  pr_cv_lib_standalone_nsl="yes", pr_cv_lib_standalone_nsl="no") ])
Arjun Shankar 4875b14
+  AC_TRY_LINK(
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      #if HAVE_NETDB_H
Arjun Shankar 4875b14
+      # include <netdb.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      gethostent();
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_nsl="yes",
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_nsl="no") ])
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 if test "$pr_cv_lib_standalone_nsl" = "no"; then
Arjun Shankar 4875b14
   AC_CHECK_LIB(nsl, gethostent)
Arjun Shankar 4875b14
 fi
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 AC_CACHE_CHECK(for standalone socket functions,pr_cv_lib_standalone_sockets,
Arjun Shankar 4875b14
-  AC_TRY_LINK(,[bind();],
Arjun Shankar 4875b14
-  pr_cv_lib_standalone_sockets="yes", pr_cv_lib_standalone_sockets="no"))
Arjun Shankar 4875b14
+  AC_TRY_LINK(
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      #if HAVE_STDDEF_H
Arjun Shankar 4875b14
+      # include <stddef.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+      #if HAVE_SYS_SOCKET_H
Arjun Shankar 4875b14
+      # include <sys/socket.h>
Arjun Shankar 4875b14
+      #endif
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    [
Arjun Shankar 4875b14
+      bind(0, NULL, 0);
Arjun Shankar 4875b14
+    ],
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_sockets="yes",
Arjun Shankar 4875b14
+    pr_cv_lib_standalone_sockets="no"))
Arjun Shankar 4875b14
 
Arjun Shankar 4875b14
 if test "$pr_cv_lib_standalone_sockets" = "no"; then
Arjun Shankar 4875b14
   AC_CHECK_LIB(socket, bind)
Arjun Shankar 4875b14
-- 
Arjun Shankar 4875b14
2.40.1
Arjun Shankar 4875b14