[v9_6] portability fix

3614.	[port]		Check for <linux/types.h>. [RT #34162]
(cherry picked from commit c174d5c13c)
(cherry picked from commit e57ea0e52f)
(cherry picked from commit 862f188804)
This commit is contained in:
Evan Hunt 2013-07-10 20:46:26 -07:00
parent 17078469da
commit a80f124e49
5 changed files with 31 additions and 2 deletions

View file

@ -1,3 +1,5 @@
3614. [port] Check for <linux/types.h>. [RT #34162]
3611. [bug] Improved resistance to a theoretical authentication
attack based on differential timing. [RT #33939]

View file

@ -117,6 +117,9 @@ static int dfd[2] = { -1, -1 };
static isc_boolean_t non_root = ISC_FALSE;
static isc_boolean_t non_root_caps = ISC_FALSE;
#ifdef HAVE_LINUX_TYPES_H
#include <linux/types.h>
#endif
#ifdef HAVE_SYS_CAPABILITY_H
#include <sys/capability.h>
#else

View file

@ -241,6 +241,9 @@ int sigwait(const unsigned int *set, int *sig);
/* Define to 1 if you have the <linux/capability.h> header file. */
#undef HAVE_LINUX_CAPABILITY_H
/* Define to 1 if you have the <linux/types.h> header file. */
#undef HAVE_LINUX_TYPES_H
/* Define to 1 if you have the <locale.h> header file. */
#undef HAVE_LOCALE_H

18
configure vendored
View file

@ -16910,10 +16910,26 @@ fi
case "$enable_linux_caps" in
yes|'')
for ac_header in linux/types.h
do :
ac_fn_c_check_header_mongrel "$LINENO" "linux/types.h" "ac_cv_header_linux_types_h" "$ac_includes_default"
if test "x$ac_cv_header_linux_types_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_LINUX_TYPES_H 1
_ACEOF
fi
done
for ac_header in linux/capability.h sys/capability.h
do :
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "#ifdef HAVE_LINUX_TYPES_H
#include <linux/types.h>
#endif
"
if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1

View file

@ -2070,7 +2070,12 @@ AC_ARG_ENABLE(linux-caps,
[ --disable-linux-caps disable linux capabilities])
case "$enable_linux_caps" in
yes|'')
AC_CHECK_HEADERS(linux/capability.h sys/capability.h)
AC_CHECK_HEADERS(linux/types.h)
AC_CHECK_HEADERS([linux/capability.h sys/capability.h], [], [],
[#ifdef HAVE_LINUX_TYPES_H
#include <linux/types.h>
#endif
])
AC_CHECK_LIB(cap, cap_set_proc)
;;
no)