s4:torture Make Samba4 build on hosts with an older libnetapi
authorAndrew Bartlett <abartlet@samba.org>
Thu, 4 Jun 2009 01:13:05 +0000 (11:13 +1000)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 4 Jun 2009 01:13:05 +0000 (11:13 +1000)
For example, Samba4 would not build (for the last week) on Fedora 10,
with samba-common 3.2.11 installed.

Andrew Bartlett

source4/torture/libnetapi/config.m4
source4/torture/torture.c

index fadef6981cdae07f30d190402076ca6c350adc1d..402f1123a54dad88c94627590c29362a4db4abc6 100644 (file)
@@ -20,7 +20,12 @@ SMB_ENABLE(TORTURE_LIBNETAPI,NO)
 if test x$use_netapi != xno; then
        AC_CHECK_HEADERS(netapi.h)
        AC_CHECK_LIB_EXT(netapi, NETAPI_LIBS, libnetapi_init)
-       if test x"$ac_cv_header_netapi_h" = x"yes" -a x"$ac_cv_lib_ext_netapi_libnetapi_init" = x"yes";then
+       AC_CHECK_LIB_EXT(netapi, NETAPI_LIBS, NetUserModalsGet)
+       AC_CHECK_LIB_EXT(netapi, NETAPI_LIBS, NetUserGetGroups)
+       AC_CHECK_LIB_EXT(netapi, NETAPI_LIBS, NetUserGetInfo)
+       AC_CHECK_LIB_EXT(netapi, NETAPI_LIBS, NetUserSetInfo)
+       if test x"$ac_cv_header_netapi_h" = x"yes" -a x"$ac_cv_lib_ext_netapi_libnetapi_init" = x"yes" -a x"$ac_cv_lib_ext_netapi_NetUserModalsGet" = x"yes" -a x"$ac_cv_lib_ext_netapi_NetUserGetGroups" = x"yes" -a x"$ac_cv_lib_ext_netapi_NetUserGetInfo" = x"yes" -a x"$ac_cv_lib_ext_netapi_NetUserSetInfo" = x"yes";then
+               AC_DEFINE(ENABLE_LIBNETAPI,1,[Whether we have libnetapi on the host system])
                SMB_ENABLE(NETAPI,YES)
                SMB_ENABLE(TORTURE_LIBNETAPI,YES)
        else
index d80acffa0dc1bbdb024bcc90f47adaa6f111e427..a7296e62db51b37aad8f2ab4e27891d66db02259 100644 (file)
@@ -45,7 +45,7 @@ bool torture_register_suite(struct torture_suite *suite)
        return torture_suite_add_suite(torture_root, suite);
 }
 
-#ifndef HAVE_NETAPI_H
+#ifndef ENABLE_LIBNETAPI
 NTSTATUS torture_libnetapi_init(void)
 {
        return NT_STATUS_OK;
@@ -63,9 +63,7 @@ _PUBLIC_ int torture_init(void)
        extern NTSTATUS torture_rpc_init(void);
        extern NTSTATUS torture_smb2_init(void);
        extern NTSTATUS torture_net_init(void);
-#ifdef HAVE_NETAPI_H
        extern NTSTATUS torture_libnetapi_init(void);
-#endif
        extern NTSTATUS torture_raw_init(void);
        extern NTSTATUS torture_unix_init(void);
        extern NTSTATUS torture_winbind_init(void);