74538b648b
Submitted by: Reviewed by: Approved by: Obtained from: MFC after: Security: Major enhancements in Samba 3.3.10 include: o Fix changing of ACLs on writable file with "dos filemode=yes" (bug #5202). o Fix smbd crashes in dns_register_smbd_reply (bug #6696). o Fix Winbind crashes when queried from nss (bug #6889). o Fix Winbind crash when retrieving empty group members (bug #7014). o Fix interdomain trusts with Win2008R2 (bug #6697).
229 lines
7.2 KiB
Text
229 lines
7.2 KiB
Text
--- ./configure.in.orig 2010-01-14 10:12:10.000000000 +0000
|
|
+++ ./configure.in 2010-02-05 00:27:01.000000000 +0000
|
|
@@ -189,16 +189,6 @@
|
|
fi
|
|
fi
|
|
|
|
-AC_ARG_ENABLE(dmalloc, [AS_HELP_STRING([--enable-dmalloc], [Enable heap debugging [default=no]])])
|
|
-
|
|
-if test "x$enable_dmalloc" = xyes
|
|
-then
|
|
- AC_DEFINE(ENABLE_DMALLOC, 1, [Define to turn on dmalloc debugging])
|
|
- AC_DEFINE(DMALLOC_FUNC_CHECK, 1,
|
|
- [Define to check invariants around some common functions])
|
|
- LIBS="$LIBS -ldmalloc"
|
|
-fi
|
|
-
|
|
#################################################
|
|
# check for a shared memory profiling support
|
|
AC_MSG_CHECKING(whether to use profiling)
|
|
@@ -1976,9 +1966,6 @@
|
|
AC_MSG_CHECKING([PICFLAG])
|
|
AC_MSG_RESULT([$PICFLAG])
|
|
|
|
-AC_MSG_CHECKING([NSSSONAMEVERSIONSUFFIX])
|
|
-AC_MSG_RESULT([$NSSSONAMEVERSIONSUFFIX])
|
|
-
|
|
AC_CACHE_CHECK([whether building shared libraries actually works],
|
|
[ac_cv_shlib_works],[
|
|
# try building a trivial shared library
|
|
@@ -4180,10 +4167,10 @@
|
|
|
|
################################################################
|
|
# first test for Active Directory support being enabled
|
|
- #if test x"$with_ads_support" = x"no"; then
|
|
- # AC_MSG_ERROR(Active Directory support is required to enable DNS Update support)
|
|
- # with_dnsupdate_support=no
|
|
- #fi
|
|
+ if test x"$with_ads_support" = x"no"; then
|
|
+ AC_MSG_ERROR(Active Directory support is required to enable DNS Update support)
|
|
+ with_dnsupdate_support=no
|
|
+ fi
|
|
##################################################################
|
|
# then test for uuid.h (necessary to generate unique DNS keynames
|
|
# (uuid.h is required for this test)
|
|
@@ -4400,15 +4387,51 @@
|
|
x"$ac_cv_header_pam_pam_modules_h" = x"no" ; then
|
|
if test x"${try_pam}" = x"yes";then
|
|
AC_MSG_ERROR([--with-pam=yes but pam_modules.h not found])
|
|
- fi
|
|
+ fi
|
|
create_pam_modules=no
|
|
- fi
|
|
+ fi
|
|
|
|
if test x"$use_pam" = x"yes"; then
|
|
- AC_DEFINE(WITH_PAM,1,[Whether to include PAM support])
|
|
+ AC_DEFINE(WITH_PAM,1,[Whether to include PAM support])
|
|
AC_DEFINE(HAVE_LIBPAM,1,[Whether libpam is available])
|
|
AUTH_LIBS="$AUTH_LIBS $PAM_LIBS"
|
|
- with_pam_for_crypt=yes
|
|
+ with_pam_for_crypt=yes
|
|
+
|
|
+ AC_VERIFY_C_PROTOTYPE(
|
|
+ [int pam_get_data(const pam_handle_t *pamh, const char *module_data_name, const void **data)],
|
|
+ [return 0;],
|
|
+ [AC_DEFINE(PAM_GET_DATA_ARG3_CONST_VOID_PP, 1, [Whether pam_get_data 3 argument is a const pointer to pointer])],
|
|
+ [
|
|
+ dnl Old OpenPAM declaration
|
|
+ AC_VERIFY_C_PROTOTYPE(
|
|
+ [int pam_get_data(pam_handle_t *pamh, const char *module_data_name, void **data)],
|
|
+ [return 0;],
|
|
+ [AC_DEFINE(PAM_GET_DATA_ARG3_VOID_PP, 1, [Whether pam_get_data 3 argument is a void pointer to pointer])],
|
|
+ [], [
|
|
+ #include <sys/types.h>
|
|
+ #if HAVE_SECURITY_PAM_APPL_H
|
|
+ #include <security/pam_appl.h>
|
|
+ #endif
|
|
+ #if HAVE_PAM_PAM_APPL_H
|
|
+ #include <pam/pam_appl.h>
|
|
+ #endif
|
|
+ #if HAVE_SECURITY_PAM_MODULES_H
|
|
+ #include <security/pam_modules.h>
|
|
+ #endif
|
|
+ ]
|
|
+ )],[
|
|
+ #include <sys/types.h>
|
|
+ #if HAVE_SECURITY_PAM_APPL_H
|
|
+ #include <security/pam_appl.h>
|
|
+ #endif
|
|
+ #if HAVE_PAM_PAM_APPL_H
|
|
+ #include <pam/pam_appl.h>
|
|
+ #endif
|
|
+ #if HAVE_SECURITY_PAM_MODULES_H
|
|
+ #include <security/pam_modules.h>
|
|
+ #endif
|
|
+ ]
|
|
+ )
|
|
|
|
if test x"$create_pam_modules" = x"yes"; then
|
|
AC_DEFINE(WITH_PAM_MODULES,1,[Whether to include PAM MODULES support])
|
|
@@ -4418,7 +4441,7 @@
|
|
AC_CHECK_HEADERS(pam/pam_ext.h pam/_pam_macros.h)
|
|
AC_CHECK_FUNC_EXT(pam_vsyslog,$PAM_LIBS)
|
|
else
|
|
- AC_MSG_WARN([PAM support detected but PAM MODULES support is missing])
|
|
+ AC_MSG_WARN([PAM support detected but PAM MODULES support is missing])
|
|
fi
|
|
fi
|
|
AC_MSG_CHECKING(whether to use PAM support)
|
|
@@ -5973,6 +5996,7 @@
|
|
NSSSONAMEVERSIONSUFFIX=".1"
|
|
WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_freebsd.o \
|
|
nsswitch/winbind_nss_linux.o"
|
|
+ WINBIND_WINS_NSS_EXTRA_OBJS="nsswitch/wins_freebsd.o"
|
|
WINBIND_NSS="nsswitch/nss_winbind.$SHLIBEXT"
|
|
WINBIND_WINS_NSS="nsswitch/nss_wins.$SHLIBEXT"
|
|
;;
|
|
@@ -6051,23 +6075,15 @@
|
|
fi
|
|
|
|
# Display test results
|
|
-
|
|
if test x"$HAVE_WINBIND" = x"no"; then
|
|
WINBIND_NSS=""
|
|
WINBIND_WINS_NSS=""
|
|
fi
|
|
|
|
-if test x"$enable_developer" = x"yes" -a x"$LINK_LIBWBCLIENT" = x"STATIC" ; then
|
|
- BUILD_LIBWBCLIENT_SHARED=no
|
|
-else
|
|
- BUILD_LIBWBCLIENT_SHARED=yes
|
|
-fi
|
|
-
|
|
LIBWBCLIENT_SHARED_TARGET=bin/libwbclient.$SHLIBEXT
|
|
LIBWBCLIENT_STATIC_TARGET=bin/libwbclient.a
|
|
LIBWBCLIENT_SOVER=0
|
|
if test $BLDSHARED = true -a x"$HAVE_WINBIND" = x"yes" -a x"$BUILD_LIBWBCLIENT_SHARED" = x"yes"; then
|
|
- NSS_MODULES="${WINBIND_NSS} ${WINBIND_WINS_NSS}"
|
|
## Only worry about libwbclient if we have shared library support
|
|
## and winbindd
|
|
LIBWBCLIENT_SHARED=$LIBWBCLIENT_SHARED_TARGET
|
|
@@ -6085,26 +6101,34 @@
|
|
|
|
EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/wbinfo\$(EXEEXT)"
|
|
EXTRA_SBIN_PROGS="$EXTRA_SBIN_PROGS bin/winbindd\$(EXEEXT)"
|
|
- if test $BLDSHARED = true -a x"$create_pam_modules" = x"yes"; then
|
|
+ if test $BLDSHARED = true; then
|
|
+ NSS_MODULES="${WINBIND_NSS} ${WINBIND_WINS_NSS}"
|
|
+ if test x"$create_pam_modules" = x"yes"; then
|
|
PAM_MODULES="$PAM_MODULES pam_winbind"
|
|
INSTALL_PAM_MODULES="installpammodules"
|
|
UNINSTALL_PAM_MODULES="uninstallpammodules"
|
|
+ fi
|
|
fi
|
|
else
|
|
AC_MSG_RESULT(no$winbind_no_reason)
|
|
fi
|
|
|
|
-AC_CHECK_LIB(pthread, pthread_mutex_lock, [WINBIND_NSS_PTHREAD="-lpthread"
|
|
+AC_MSG_CHECKING([NSSSONAMEVERSIONSUFFIX])
|
|
+AC_MSG_RESULT([$NSSSONAMEVERSIONSUFFIX])
|
|
+
|
|
+AC_CHECK_LIB(pthread, pthread_mutex_lock, [WINBIND_NSS_PTHREAD="${PTHREAD_LIBS}"
|
|
AC_DEFINE(HAVE_PTHREAD, 1, [whether pthread exists])])
|
|
|
|
AC_SUBST(WINBIND_NSS_PTHREAD)
|
|
AC_SUBST(WINBIND_NSS)
|
|
-AC_SUBST(WINBIND_WINS_NSS)
|
|
AC_SUBST(WINBIND_NSS_LDSHFLAGS)
|
|
AC_SUBST(WINBIND_NSS_EXTRA_OBJS)
|
|
AC_SUBST(WINBIND_NSS_EXTRA_LIBS)
|
|
-AC_SUBST(NSSSONAMEVERSIONSUFFIX)
|
|
AC_SUBST(PAM_WINBIND_EXTRA_LIBS)
|
|
+AC_SUBST(WINBIND_WINS_NSS)
|
|
+AC_SUBST(WINBIND_WINS_NSS_EXTRA_OBJS)
|
|
+AC_SUBST(WINBIND_WINS_NSS_EXTRA_LIBS)
|
|
+AC_SUBST(NSSSONAMEVERSIONSUFFIX)
|
|
|
|
AC_SUBST(WINBIND_KRB5_LOCATOR)
|
|
|
|
@@ -6291,13 +6315,21 @@
|
|
# Start
|
|
AC_CHECK_FUNC(getmntent)
|
|
|
|
-AC_CHECK_HEADERS(sys/statfs.h)
|
|
+AC_CHECK_HEADERS(sys/statfs.h sys/mount.h)
|
|
|
|
AC_MSG_CHECKING([vfs_fileid: checking for statfs() and struct statfs.f_fsid)])
|
|
AC_CACHE_VAL(vfsfileid_cv_statfs,[
|
|
AC_TRY_RUN([
|
|
#include <sys/types.h>
|
|
+ #ifdef HAVE_SYS_PARAM_H
|
|
+ #include <sys/param.h>
|
|
+ #endif
|
|
+ #ifdef HAVE_SYS_MOUNT_H
|
|
+ #include <sys/mount.h>
|
|
+ #endif
|
|
+ #ifdef HAVE_SYS_STATFS_H
|
|
#include <sys/statfs.h>
|
|
+ #endif
|
|
int main(void)
|
|
{
|
|
struct statfs fsd;
|
|
@@ -6554,6 +6586,16 @@
|
|
|
|
fi
|
|
|
|
+AC_ARG_ENABLE(dmalloc, [AS_HELP_STRING([--enable-dmalloc], [Enable heap debugging [default=no]])])
|
|
+
|
|
+if test "x$enable_dmalloc" = xyes
|
|
+then
|
|
+ AC_DEFINE(ENABLE_DMALLOC, 1, [Define to turn on dmalloc debugging])
|
|
+ AC_DEFINE(DMALLOC_FUNC_CHECK, 1,
|
|
+ [Define to check invariants around some common functions])
|
|
+ LIBS="$LIBS -ldmalloc"
|
|
+fi
|
|
+
|
|
dnl Remove -L/usr/lib/? from LDFLAGS and LIBS
|
|
LIB_REMOVE_USR_LIB(LDFLAGS)
|
|
LIB_REMOVE_USR_LIB(LIBS)
|
|
@@ -6610,6 +6652,8 @@
|
|
pkgconfig/wbclient.pc
|
|
pkgconfig/netapi.pc
|
|
pkgconfig/smbsharemodes.pc
|
|
+ lib/talloc/talloc.pc
|
|
+ lib/tdb/tdb.pc
|
|
../examples/libsmbclient/Makefile.internal
|
|
)
|
|
|