commit f103a48636a7979c68c7a64cb381a4d0942c5109 Author: Ian Kent Date: Mon Nov 13 09:48:39 2017 +0800 autofs-5.1.3 - update configure to check for pipe2(2) In a bug report by John Salmon it appears that the use of __have_pipe2 isn't doing what's needed when checking for pipe2(2). Hopefully updating configure to explicity check for pipe2(2), lifted from John's patch, will be more reliable. Signed-off-by: Ian Kent --- CHANGELOG | 1 + configure | 12 ++++++++++++ configure.in | 2 ++ include/automount.h | 2 +- include/config.h.in | 3 +++ 5 files changed, 19 insertions(+), 1 deletion(-) --- autofs-5.0.7.orig/CHANGELOG +++ autofs-5.0.7/CHANGELOG @@ -285,6 +285,7 @@ - fix memory leak in umount_amd_ext_mount(). - fix strerror_r() parameter declaration in do program_mount(). - fix incorrect check in validate_program_options(). +- update configure to check for pipe2(2). 25/07/2012 autofs-5.0.7 ======================= --- autofs-5.0.7.orig/configure.in +++ autofs-5.0.7/configure.in @@ -153,6 +153,8 @@ AF_CHECK_SSS_LIB(SSS_AUTOFS, libsss_auto AC_SUBST(HAVE_SSS_AUTOFS) AC_SUBST(sssldir) +AC_CHECK_FUNCS(pipe2) + # # Newer mounts have the -s (sloppy) option to ignore unknown options, # good for portability --- autofs-5.0.7.orig/include/automount.h +++ autofs-5.0.7/include/automount.h @@ -653,7 +653,7 @@ static inline int open_pipe(int pipefd[2 { int ret; -#if defined(O_CLOEXEC) && defined(SOCK_CLOEXEC) && defined(__have_pipe2) +#if defined(O_CLOEXEC) && defined(SOCK_CLOEXEC) && defined(HAVE_PIPE2) if (cloexec_works != -1) { ret = pipe2(pipefd, O_CLOEXEC); if (ret != -1) --- autofs-5.0.7.orig/include/config.h.in +++ autofs-5.0.7/include/config.h.in @@ -54,6 +54,9 @@ /* define if you have MOUNT_NFS */ #undef HAVE_MOUNT_NFS +/* Define to 1 if you have the `pipe2' function. */ +#undef HAVE_PIPE2 + /* define if the mount command supports the -s option */ #undef HAVE_SLOPPY_MOUNT --- autofs-5.0.7.orig/configure +++ autofs-5.0.7/configure @@ -3955,6 +3955,18 @@ fi +for ac_func in pipe2 +do : + ac_fn_c_check_func "$LINENO" "pipe2" "ac_cv_func_pipe2" +if test "x$ac_cv_func_pipe2" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_PIPE2 1 +_ACEOF + +fi +done + + # # Newer mounts have the -s (sloppy) option to ignore unknown options, # good for portability