vfs: Add new VFS module vfs_nfs4acl_xattr to use nfs4acl.idl
[samba.git] / source3 / Makefile.in
index 197578f527f266f5666f7d7e564d84a96ef9ad87..4de5cdeb4fa567a168d29873837fe458ab699160 100644 (file)
@@ -115,6 +115,9 @@ LIBREPLACE_LIBS=@LIBREPLACE_LIBS@
 LIBTDB=@LIBTDB_STATIC@
 LIBTDB_LIBS=@LIBTDB_LIBS@
 TDB_DEPS=@TDB_DEPS@
+LIBNTDB=@LIBNTDB_STATIC@
+LIBNTDB_LIBS=@LIBNTDB_LIBS@
+NTDB_DEPS=@NTDB_DEPS@
 LIBNETAPI=@LIBNETAPI_STATIC@ @LIBNETAPI_SHARED@
 LIBNETAPI_LIBS=@LIBNETAPI_LIBS@
 LIBSMBCLIENT_LIBS=@LIBSMBCLIENT_LIBS@
@@ -127,6 +130,11 @@ TDBTOOL = @TDBTOOL@
 TDBDUMP = @TDBDUMP@
 TDBRESTORE = @TDBRESTORE@
 TDBTORTURE = @TDBTORTURE@
+NTDBBACKUP = @NTDBBACKUP@
+NTDBTOOL = @NTDBTOOL@
+NTDBDUMP = @NTDBDUMP@
+NTDBRESTORE = @NTDBRESTORE@
+NTDBTORTURE = @NTDBTORTURE@
 PTHREADPOOLTEST = @PTHREADPOOLTEST@
 
 INSTALLCMD=@INSTALL@
@@ -153,7 +161,6 @@ PDBLIBDIR = $(MODULESDIR)/pdb
 RPCLIBDIR = $(MODULESDIR)/rpc
 IDMAPLIBDIR = $(MODULESDIR)/idmap
 NSSINFOLIBDIR = $(MODULESDIR)/nss_info
-CHARSETLIBDIR = $(MODULESDIR)/charset
 AUTHLIBDIR = $(MODULESDIR)/auth
 CONFIGLIBDIR = $(MODULESDIR)/config
 GPEXTLIBDIR = $(MODULESDIR)/gpext
@@ -171,8 +178,6 @@ FLAGS = -I. \
        $(ISA) \
        -I$(srcdir)/lib \
        -I.. \
-       -Iautoconf \
-       -Iautoconf/librpc \
        -I./../lib/ldb/include \
        -D_SAMBA_BUILD_=3
 
@@ -201,6 +206,11 @@ PATH_FLAGS = -DSMB_PASSWD_FILE=\"$(SMB_PASSWD_FILE)\" \
        -DDATADIR=\"$(DATADIR)\" \
        -DSETUPDIR=\"$(SETUPDIR)\"
 
+# You usually want both TDB and NTDB.
+LIBTDBS=$(LIBTDB) $(LIBNTDB)
+LIBTDBS_LIBS=$(LIBTDB_LIBS) $(LIBNTDB_LIBS)
+TDBS_DEPS=$(TDB_DEPS) $(NTDB_DEPS)
+
 # Note that all executable programs now provide for an optional executable suffix.
 
 SBIN_PROGS = bin/smbd bin/nmbd @SWAT_SBIN_TARGETS@ @EXTRA_SBIN_PROGS@
@@ -215,10 +225,9 @@ BIN_PROGS3 = bin/smbpasswd bin/rpcclient bin/smbcacls \
        bin/profiles bin/ntlm_auth bin/sharesec \
        bin/smbcquotas bin/eventlogadm 
 
-TORTURE_PROGS = bin/smbtorture bin/msgtest \
-       bin/masktest bin/locktest \
+TORTURE_PROGS = bin/smbtorture3 bin/msgtest \
        bin/locktest2 bin/nsstest bin/vfstest \
-       bin/pdbtest $(TALLOCTORT) bin/replacetort \
+       $(TALLOCTORT) bin/replacetort \
        $(TDBTORTURE) $(PTHREADPOOLTEST) \
        bin/smbconftort bin/vlp
 
@@ -242,12 +251,11 @@ VFS_MODULES = @VFS_MODULES@
 PERFCOUNT_MODULES = @PERFCOUNT_MODULES@
 PDB_MODULES = @PDB_MODULES@
 IDMAP_MODULES = @IDMAP_MODULES@
-CHARSET_MODULES = @CHARSET_MODULES@
 AUTH_MODULES = @AUTH_MODULES@
 NSS_INFO_MODULES = @NSS_INFO_MODULES@
 GPEXT_MODULES = @GPEXT_MODULES@
 MODULES = $(VFS_MODULES) $(PDB_MODULES) $(IDMAP_MODULES) \
-          $(CHARSET_MODULES) $(AUTH_MODULES) $(NSS_INFO_MODULES) \
+          $(AUTH_MODULES) $(NSS_INFO_MODULES) \
          $(GPEXT_MODULES) $(PERFCOUNT_MODULES)
 
 EXTRA_ALL_TARGETS = @EXTRA_ALL_TARGETS@
@@ -259,8 +267,11 @@ EXTRA_ALL_TARGETS = @EXTRA_ALL_TARGETS@
 TDB_LIB_OBJ = lib/util_tdb.o ../lib/util/util_tdb.o \
          ../lib/tdb_wrap/tdb_wrap.o \
          ../lib/dbwrap/dbwrap.o \
+         ../lib/dbwrap/dbwrap_local_open.o \
          lib/dbwrap/dbwrap_open.o \
          ../lib/dbwrap/dbwrap_tdb.o \
+         ../lib/util/util_ntdb.o \
+         ../lib/dbwrap/dbwrap_ntdb.o \
          lib/dbwrap/dbwrap_ctdb.o \
          lib/g_lock.o \
          ../lib/dbwrap/dbwrap_cache.o \
@@ -329,7 +340,7 @@ LIBNDR_SPOOLSS_OBJ = autoconf/librpc/gen_ndr/ndr_spoolss.o \
                  ../librpc/ndr/ndr_spoolss_buf.o
 
 LIBNDR_NTPRINTING_OBJ = autoconf/librpc/gen_ndr/ndr_ntprinting.o \
-                       ../librpc/ndr/ndr_ntprinting.o \
+                       ../librpc/ndr/ndr_ntprinting.o
 
 LIBNDR_PREG_OBJ = autoconf/librpc/gen_ndr/ndr_preg.o \
                  ../librpc/ndr/ndr_preg.o
@@ -378,10 +389,13 @@ LIBCLI_SAMR_OBJ = autoconf/librpc/gen_ndr/ndr_samr_c.o \
 
 LIBCLI_NETLOGON_OBJ = autoconf/librpc/gen_ndr/ndr_netlogon_c.o \
                      rpc_client/cli_netlogon.o \
-                     rpc_client/util_netlogon.o
+                     rpc_client/util_netlogon.o \
+                     rpc_client/init_netlogon.o
 
 LIBCLI_EPMAPPER_OBJ = autoconf/librpc/gen_ndr/ndr_epmapper_c.o
 
+LIBCLI_FSRVP_OBJ = autoconf/librpc/gen_ndr/ndr_fsrvp_c.o
+
 LIBNDR_GEN_OBJ = autoconf/librpc/gen_ndr/ndr_wkssvc.o \
                 $(LIBNDR_GEN_OBJ0) \
                 autoconf/librpc/gen_ndr/ndr_dfs.o \
@@ -395,7 +409,8 @@ LIBNDR_GEN_OBJ = autoconf/librpc/gen_ndr/ndr_wkssvc.o \
                 autoconf/librpc/gen_ndr/ndr_dssetup.o \
                 autoconf/librpc/gen_ndr/ndr_epmapper.o \
                 autoconf/librpc/gen_ndr/ndr_ntsvcs.o \
-                $(LIBNDR_SPOOLSS_OBJ)
+                $(LIBNDR_SPOOLSS_OBJ) \
+                autoconf/librpc/gen_ndr/ndr_fsrvp.o
 
 # this includes only the low level parse code, not stuff
 # that requires knowledge of security contexts
@@ -421,18 +436,19 @@ UTIL_OBJ = ../lib/util/rbtree.o ../lib/util/signal.o ../lib/util/time.o \
                   ../lib/util/genrand.o ../lib/util/util_net.o \
                   ../lib/util/become_daemon.o ../lib/util/system.o \
                   ../lib/util/tevent_unix.o ../lib/util/tevent_ntstatus.o \
-                  ../lib/util/tevent_werror.o \
+                  ../lib/util/tevent_werror.o ../lib/util/util_process.o\
                   lib/tevent_barrier.o \
                   ../lib/util/smb_threads.o ../lib/util/util_id.o \
                   ../lib/util/blocking.o ../lib/util/rfc1738.o \
-                  ../lib/util/select.o ../lib/util/util_pw.o ../lib/util/server_id.o
+                  ../lib/util/select.o ../lib/util/util_pw.o ../lib/util/server_id.o \
+                  ../lib/util/setid.o ../lib/util/pidfile.o ../lib/util/getpass.o
 
 CRYPTO_OBJ = ../lib/crypto/crc32.o @CRYPTO_MD5_OBJ@ \
                         ../lib/crypto/hmacmd5.o ../lib/crypto/arcfour.o \
                         ../lib/crypto/md4.o \
                         ../lib/crypto/sha256.o ../lib/crypto/hmacsha256.o \
                         ../lib/crypto/aes.o ../lib/crypto/rijndael-alg-fst.o \
-                        ../lib/crypto/aes_cmac_128.o
+                        ../lib/crypto/aes_cmac_128.o ../lib/crypto/aes_ccm_128.o
 
 LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) $(LIBTSOCKET_OBJ) \
          lib/messages.o autoconf/librpc/gen_ndr/ndr_messaging.o lib/messages_local.o \
@@ -443,19 +459,20 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) $(LIBTSOCKET_OBJ) \
          ../lib/socket/interfaces.o lib/memcache.o \
          lib/talloc_dict.o \
          lib/serverid.o \
+         lib/asys/asys.o \
          lib/util_transfer_file.o ../lib/async_req/async_sock.o \
          lib/addrchange.o \
          $(TDB_LIB_OBJ) \
          $(VERSION_OBJ) lib/charcnv.o ../lib/util/charset/convert_string.o \
          ../lib/util/charset/pull_push.o \
          lib/fstring.o ../lib/util/debug.o ../lib/util/debug_s3.o ../lib/util/fault.o \
-         lib/interface.o lib/pidfile.o lib/dumpcore.o \
+         lib/interface.o lib/dumpcore.o \
          lib/system.o lib/sendfile.o lib/recvfile.o lib/time.o \
          lib/username.o \
          ../libds/common/flag_mapping.o \
          lib/access.o lib/smbrun.o \
          ../lib/util/bitmap.o ../lib/util/dprintf.o $(UTIL_REG_OBJ) \
-         lib/wins_srv.o lib/string_init.o \
+         lib/wins_srv.o \
          lib/util_str.o ../lib/util/util_str_common.o \
          ../lib/util/util_str.o \
          ../lib/util/base64.o lib/util_sid.o \
@@ -469,14 +486,13 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) $(LIBTSOCKET_OBJ) \
          ../libcli/smb/smb_signing.o \
          ../lib/util/charset/iconv.o ../lib/util/charset/weird.o \
          ../lib/util/charset/charset_macosxfs.o intl/lang_tdb.o \
-         lib/conn_tdb.o lib/adt_tree.o lib/gencache.o \
-         lib/sessionid_tdb.o \
-         ../lib/util/modules.o lib/events.o @LIBTEVENT_OBJ0@ \
+         lib/adt_tree.o lib/gencache.o \
+         ../lib/util/modules.o lib/events.o ../lib/util/tevent_debug.o @LIBTEVENT_OBJ0@ \
          @CCAN_OBJ@ \
          lib/server_contexts.o \
          lib/server_prefork.o \
          lib/server_prefork_util.o \
-         lib/ldap_escape.o @CHARSET_STATIC@ \
+         lib/ldap_escape.o \
          ../libcli/security/secdesc.o ../libcli/security/access_check.o \
          ../libcli/security/secace.o ../libcli/security/object_tree.o \
          ../libcli/security/sddl.o ../libcli/security/session.o \
@@ -484,6 +500,7 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) $(LIBTSOCKET_OBJ) \
          lib/fncall.o \
          libads/krb5_errs.o lib/system_smbd.o lib/audit.o $(LIBNDR_OBJ) \
          lib/file_id.o lib/idmap_cache.o \
+         lib/tevent_wait.o \
          ../libcli/security/dom_sid.o ../libcli/security/security_descriptor.o \
          ../libcli/security/security_token.o ../libcli/security/util_sid.o \
          ../libcli/smb/util.o ../lib/util/idtree.o
@@ -617,6 +634,7 @@ LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
             ../libcli/smb/read_smb.o \
             ../libcli/smb/smbXcli_base.o \
             ../libcli/smb/smb1cli_trans.o \
+            ../libcli/smb/smb1cli_echo.o \
             ../libcli/smb/smb2cli_session.o \
             libsmb/smb2cli_tcon.o \
             ../libcli/smb/smb2cli_create.o \
@@ -630,6 +648,7 @@ LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
             ../libcli/smb/smb2cli_ioctl.o \
             ../libcli/smb/smb2cli_query_info.o \
             ../libcli/smb/smb2cli_set_info.o \
+            ../libcli/smb/smb2cli_echo.o \
             libsmb/cli_np_tstream.o \
             libsmb/smbsock_connect.o \
             $(LIBSAMBA_OBJ) \
@@ -640,6 +659,7 @@ LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o libsmb/clifile.o \
 
 LIBMSRPC_OBJ = $(SCHANNEL_OBJ) \
               rpc_client/cli_pipe.o \
+              $(LIBCLI_NETLOGON_OBJ) \
               librpc/crypto/gse_krb5.o \
               librpc/crypto/gse.o \
               ../auth/kerberos/gssapi_pac.o \
@@ -793,12 +813,10 @@ RPC_SERVER_OBJ = $(RPC_LSARPC_OBJ) $(RPC_WINREG_OBJ) $(RPC_INITSHUTDOWN_OBJ) \
                 $(LIBCLI_SRVSVC_OBJ) \
                 $(LIBCLI_LSA_OBJ) \
                 $(LIBCLI_SAMR_OBJ) \
-                $(LIBCLI_NETLOGON_OBJ) \
                 $(RPC_SERVER_REGISTER_OBJ) \
                 $(RPC_CLIENT_SCHANNEL_OBJ) \
                 rpc_server/rpc_sock_helper.o \
                 rpc_server/rpc_service_setup.o \
-                rpc_client/init_netlogon.o \
                 rpc_client/init_samr.o
 
 RPC_CLIENT_SCHANNEL_OBJ = rpc_client/cli_pipe_schannel.o
@@ -814,6 +832,7 @@ PASSDB_GET_SET_OBJ = passdb/pdb_get_set.o
 
 PASSDB_OBJ = $(PASSDB_GET_SET_OBJ) passdb/passdb.o passdb/pdb_interface.o \
                lib/util_wellknown.o lib/util_builtin.o passdb/pdb_compat.o \
+               lib/util_sid_passdb.o \
                lib/util_unixsids.o passdb/lookup_sid.o \
                passdb/login_cache.o @PDB_STATIC@ \
                passdb/account_pol.o $(PRIVILEGES_OBJ) \
@@ -841,11 +860,14 @@ NOTIFY_OBJ = smbd/notify.o smbd/notify_inotify.o smbd/notify_internal.o \
 
 FNAME_UTIL_OBJ = lib/filename_util.o
 
+NFS4ACL_OBJ = modules/nfs4_acls.o modules/non_posix_acls.o
+
 VFS_DEFAULT_OBJ = modules/vfs_default.o
 VFS_AUDIT_OBJ = modules/vfs_audit.o
 VFS_EXTD_AUDIT_OBJ = modules/vfs_extd_audit.o
 VFS_FULL_AUDIT_OBJ = modules/vfs_full_audit.o
 VFS_FAKE_PERMS_OBJ = modules/vfs_fake_perms.o
+VFS_FAKE_ACLS_OBJ = modules/vfs_fake_acls.o autoconf/librpc/gen_ndr/ndr_smb_acl.o
 VFS_RECYCLE_OBJ = modules/vfs_recycle.o
 VFS_NETATALK_OBJ = modules/vfs_netatalk.o
 VFS_DEFAULT_QUOTA_OBJ = modules/vfs_default_quota.o
@@ -858,11 +880,11 @@ VFS_AFSACL_OBJ = modules/vfs_afsacl.o
 VFS_XATTR_TDB_OBJ = modules/vfs_xattr_tdb.o lib/xattr_tdb.o
 VFS_POSIXACL_OBJ = modules/vfs_posixacl.o
 VFS_AIXACL_OBJ = modules/vfs_aixacl.o modules/vfs_aixacl_util.o
-VFS_AIXACL2_OBJ = modules/vfs_aixacl2.o modules/vfs_aixacl_util.o modules/nfs4_acls.o
+VFS_AIXACL2_OBJ = modules/vfs_aixacl2.o modules/vfs_aixacl_util.o $(NFS4ACL_OBJ)
 VFS_SOLARISACL_OBJ = modules/vfs_solarisacl.o
-VFS_ZFSACL_OBJ = modules/vfs_zfsacl.o modules/nfs4_acls.o
+VFS_ZFSACL_OBJ = modules/vfs_zfsacl.o $(NFS4ACL_OBJ)
+VFS_NFS4ACL_XATTR_OBJ = modules/vfs_nfs4acl_xattr.o
 VFS_HPUXACL_OBJ = modules/vfs_hpuxacl.o
-VFS_IRIXACL_OBJ = modules/vfs_irixacl.o
 VFS_TRU64ACL_OBJ = modules/vfs_tru64acl.o
 VFS_CATIA_OBJ = modules/vfs_catia.o
 VFS_STREAMS_XATTR_OBJ = modules/vfs_streams_xattr.o
@@ -870,14 +892,14 @@ VFS_STREAMS_DEPOT_OBJ = modules/vfs_streams_depot.o
 VFS_CACHEPRIME_OBJ = modules/vfs_cacheprime.o
 VFS_PREALLOC_OBJ = modules/vfs_prealloc.o
 VFS_COMMIT_OBJ = modules/vfs_commit.o
-VFS_GPFS_OBJ = modules/vfs_gpfs.o modules/gpfs.o modules/nfs4_acls.o
-VFS_GPFS_HSM_NOTIFY_OBJ = modules/vfs_gpfs_hsm_notify.o
+VFS_GPFS_OBJ = modules/vfs_gpfs.o modules/gpfs.o $(NFS4ACL_OBJ)
 VFS_NOTIFY_FAM_OBJ = modules/vfs_notify_fam.o
 VFS_READAHEAD_OBJ = modules/vfs_readahead.o
 VFS_TSMSM_OBJ = modules/vfs_tsmsm.o
 VFS_FILEID_OBJ = modules/vfs_fileid.o
 VFS_AIO_FORK_OBJ = modules/vfs_aio_fork.o
 VFS_AIO_PTHREAD_OBJ = modules/vfs_aio_pthread.o
+VFS_AIO_POSIX_OBJ = modules/vfs_aio_posix.o
 VFS_AIO_LINUX_OBJ = modules/vfs_aio_linux.o
 VFS_PREOPEN_OBJ = modules/vfs_preopen.o
 VFS_SYNCOPS_OBJ = modules/vfs_syncops.o
@@ -890,6 +912,9 @@ VFS_SCANNEDONLY_OBJ = modules/vfs_scannedonly.o
 VFS_CROSSRENAME_OBJ = modules/vfs_crossrename.o
 VFS_LINUX_XFS_SGID_OBJ = modules/vfs_linux_xfs_sgid.o
 VFS_TIME_AUDIT_OBJ = modules/vfs_time_audit.o
+VFS_MEDIA_HARMONY_OBJ = modules/vfs_media_harmony.o
+VFS_BTRFS_OBJ = modules/vfs_btrfs.o
+VFS_CEPH_OBJ = modules/vfs_ceph.o
 
 PAM_ERRORS_OBJ = ../libcli/auth/pam_errors.o
 PLAINTEXT_AUTH_OBJ = auth/pampass.o auth/pass_check.o $(PAM_ERRORS_OBJ)
@@ -905,7 +930,6 @@ AUTH_UNIX_OBJ = auth/auth_unix.o
 AUTH_WINBIND_OBJ = auth/auth_winbind.o
 AUTH_WBC_OBJ = auth/auth_wbc.o
 AUTH_SCRIPT_OBJ = auth/auth_script.o
-AUTH_NETLOGOND_OBJ = auth/auth_netlogond.o
 
 AUTH_OBJ = auth/auth.o @AUTH_STATIC@ auth/auth_util.o auth/token_util.o \
           auth/server_info.o \
@@ -933,13 +957,13 @@ SMBD_OBJ_SRV = smbd/server_reload.o \
               smbd/dosmode.o smbd/filename.o smbd/open.o smbd/close.o \
               smbd/blocking.o smbd/sec_ctx.o smbd/srvstr.o \
               smbd/vfs.o smbd/perfcount.o smbd/statcache.o smbd/seal.o \
-               smbd/posix_acls.o lib/sysacls.o \
+               smbd/posix_acls.o lib/sysacls.o autoconf/librpc/gen_ndr/ndr_smb_acl.o\
               smbd/process.o smbd/service.o param/service.o smbd/error.o \
               rpc_server/epmd.o \
               rpc_server/lsasd.o \
               printing/printspoolss.o printing/spoolssd.o \
               lib/sysquotas.o lib/sysquotas_linux.o \
-              lib/sysquotas_xfs.o lib/sysquotas_4A.o \
+              lib/sysquotas_xfs.o lib/sysquotas_4A.o lib/sysquotas_4B.o \
               lib/sysquotas_nfs.o \
               lib/smbd_shim.o \
               lib/background.o \
@@ -961,12 +985,24 @@ SMBD_OBJ_SRV = smbd/server_reload.o \
               smbd/smb2_write.o \
               smbd/smb2_lock.o \
               smbd/smb2_ioctl.o \
+               smbd/smb2_ioctl_dfs.o \
+               smbd/smb2_ioctl_filesys.o \
+               smbd/smb2_ioctl_named_pipe.o \
+               smbd/smb2_ioctl_network_fs.o \
               smbd/smb2_keepalive.o \
               smbd/smb2_find.o \
               smbd/smb2_notify.o \
               smbd/smb2_getinfo.o \
               smbd/smb2_setinfo.o \
               smbd/smb2_break.o \
+              autoconf/librpc/gen_ndr/ndr_smbXsrv.o \
+              smbd/smbXsrv_version.o \
+              smbd/smbXsrv_session.o \
+              smbd/smbXsrv_tcon.o \
+              smbd/smbXsrv_open.o \
+              smbd/durable.o \
+              smbd/scavenger.o \
+              autoconf/librpc/gen_ndr/ndr_ioctl.o \
               $(MANGLE_OBJ) @VFS_STATIC@
 
 SMBD_OBJ_BASE = $(PARAM_WITHOUT_REG_OBJ) $(SMBD_OBJ_SRV) $(LIBSMB_OBJ) \
@@ -982,7 +1018,9 @@ SMBD_OBJ_BASE = $(PARAM_WITHOUT_REG_OBJ) $(SMBD_OBJ_SRV) $(LIBSMB_OBJ) \
                $(PRIVILEGES_BASIC_OBJ) \
                $(REGFIO_OBJ) \
                $(REG_API_REGF_OBJ) \
-               $(LIBNDR_XATTR_OBJ)
+               $(LIBNDR_XATTR_OBJ) \
+               lib/conn_tdb.o lib/sessionid_tdb.o
+
 
 PRINTING_OBJ = printing/pcap.o printing/print_svid.o printing/print_aix.o \
                printing/print_cups.o printing/print_generic.o \
@@ -1024,19 +1062,10 @@ NMBD_OBJ = $(NMBD_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
 SWAT_OBJ1 = web/cgi.o web/diagnose.o web/startstop.o web/statuspage.o \
            web/swat.o web/neg_lang.o
 
-SWAT_OBJ = $(SWAT_OBJ1) $(PARAM_OBJ) $(PRINTING_OBJ) $(PRINTBASE_OBJ) $(LIBSMB_OBJ) \
-          $(LOCKING_OBJ) $(PASSDB_OBJ) $(KRBCLIENT_OBJ) \
-          $(LIB_NONSMBD_OBJ) $(GROUPDB_OBJ) $(PLAINTEXT_AUTH_OBJ) \
-          $(POPT_LIB_OBJ) $(SMBLDAP_OBJ) $(LIBMSRPC_GEN_OBJ) $(LIBMSRPC_OBJ) \
-           $(PASSCHANGE_OBJ) $(FNAME_UTIL_OBJ) \
-          $(LIBCLI_SAMR_OBJ) \
-          rpc_client/init_lsa.o
+SWAT_OBJ = $(SWAT_OBJ1) $(SMBD_OBJ_BASE) $(PASSCHANGE_OBJ)
+
+STATUS_OBJ = utils/status.o utils/status_profile.o $(SMBD_OBJ_BASE)
 
-STATUS_OBJ = utils/status.o utils/status_profile.o \
-            $(LOCKING_OBJ) $(PARAM_OBJ) \
-            smbd/notify_internal.o autoconf/librpc/gen_ndr/ndr_notify.o \
-             $(PROFILE_OBJ) $(LIB_NONSMBD_OBJ) $(POPT_LIB_OBJ) \
-            $(LIBSMB_ERR_OBJ) $(FNAME_UTIL_OBJ)
 
 SMBCONTROL_OBJ = utils/smbcontrol.o $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) \
        $(LIBSMB_ERR_OBJ) $(POPT_LIB_OBJ) $(PRINTBASE_OBJ)
@@ -1091,7 +1120,7 @@ RPCCLIENT_OBJ1 = rpcclient/rpcclient.o rpcclient/cmd_lsarpc.o \
                 rpcclient/cmd_shutdown.o rpcclient/cmd_test.o \
                 rpcclient/cmd_wkssvc.o rpcclient/cmd_ntsvcs.o \
                 rpcclient/cmd_drsuapi.o rpcclient/cmd_eventlog.o \
-                rpcclient/cmd_winreg.o \
+                rpcclient/cmd_winreg.o rpcclient/cmd_fss.o \
                 $(DISPLAY_SEC_OBJ)
 
 RPCCLIENT_OBJ = $(RPCCLIENT_OBJ1) \
@@ -1112,9 +1141,8 @@ RPCCLIENT_OBJ = $(RPCCLIENT_OBJ1) \
             $(LIBCLI_LSA_OBJ) \
             $(LIBCLI_SAMR_OBJ) \
             $(LIBCLI_WINREG_OBJ) \
-            $(LIBCLI_NETLOGON_OBJ) \
+            $(LIBCLI_FSRVP_OBJ) \
             $(RPC_CLIENT_SCHANNEL_OBJ) \
-            rpc_client/init_netlogon.o \
             rpc_client/init_samr.o
 
 PAM_WINBIND_OBJ = ../nsswitch/pam_winbind.o $(WBCOMMON_OBJ) \
@@ -1174,7 +1202,7 @@ SMBCONFTORT_OBJ = $(SMBCONFTORT_OBJ0) \
                  $(POPT_LIB_OBJ)
 
 PTHREADPOOLTEST_OBJ = lib/pthreadpool/pthreadpool.o \
-               lib/pthreadpool/tests.o
+               lib/pthreadpool/tests.o $(LIBREPLACE_OBJ)
 
 LIBNET_OBJ = libnet/libnet_join.o \
             libnet/libnet_keytab.o \
@@ -1204,52 +1232,32 @@ NET_OBJ1 = utils/net.o utils/net_ads.o utils/net_help.o \
           $(PASSWD_UTIL_OBJ) utils/net_dns.o utils/net_ads_gpo.o \
           utils/net_conf.o utils/net_join.o utils/net_user.o \
           utils/net_group.o utils/net_file.o utils/net_registry.o utils/net_registry_check.o\
-          auth/token_util.o utils/net_dom.o utils/net_share.o \
+          utils/net_dom.o utils/net_share.o \
           utils/net_g_lock.o \
           utils/net_serverid.o \
           utils/net_eventlog.o \
           utils/net_printing.o \
           utils/net_rpc_trust.o \
           utils/net_rpc_conf.o\
-          $(LIBNDR_NTPRINTING_OBJ) \
           $(LIBNDR_PREG_OBJ) \
-          $(LIBCLI_SPOOLSS_OBJ) \
-          $(LIBCLI_WINREG_OBJ) \
           $(LIBCLI_DRSUAPI_OBJ) \
           $(LIBCLI_INITSHUTDOWN_OBJ) \
           $(LIBCLI_DSSETUP_OBJ) \
           $(LIBCLI_SVCCTL_OBJ) \
           $(LIBCLI_WKSSVC_OBJ) \
-          $(LIBCLI_SRVSVC_OBJ) \
-          $(LIBCLI_LSA_OBJ) \
-          $(LIBCLI_SAMR_OBJ) \
-          $(LIBCLI_NETLOGON_OBJ) \
-          $(RPC_CLIENT_SCHANNEL_OBJ) \
-          rpc_client/init_netlogon.o \
-          rpc_client/init_samr.o \
           registry/reg_parse.o registry/reg_format.o \
-          registry/reg_import.o \
-          printing/nt_printing_migrate.o
+          registry/reg_import.o
 
 # these are not processed by make proto
 NET_OBJ2 = utils/net_registry_util.o utils/net_help_common.o
 
 NET_OBJ = $(NET_OBJ1) \
-         $(NET_OBJ2) @FAKE_KASERVER_OBJ@\
-         $(PARAM_WITHOUT_REG_OBJ) $(LIBSMB_OBJ) \
-         $(PASSDB_OBJ) $(GROUPDB_OBJ) \
-         $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) $(LIBADDNS_OBJ0) \
-         $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) \
-         $(LIBADS_OBJ) $(LIBADS_SERVER_OBJ) $(LIBADS_PRINTER_OBJ) $(POPT_LIB_OBJ) \
-         $(SMBLDAP_OBJ) $(DCUTIL_OBJ) \
-         $(AFS_OBJ) $(AFS_SETTOKEN_OBJ) $(READLINE_OBJ) \
-         $(LIBGPO_OBJ) @BUILD_INIPARSER@ $(DISPLAY_SEC_OBJ) \
-         $(REG_SMBCONF_OBJ) \
-         $(LIBNET_OBJ) $(LIBNET_DSSYNC_OBJ) $(LIBNET_SAMSYNC_OBJ) \
-         $(LIBSMBCONF_OBJ) \
-         $(REGFIO_OBJ) \
-         $(PRIVILEGES_BASIC_OBJ) \
-         $(LIB_EVENTLOG_OBJ)
+         $(NET_OBJ2) @FAKE_KASERVER_OBJ@ \
+         $(LIBADDNS_OBJ0) \
+         $(READLINE_OBJ) \
+         $(LIBGPO_OBJ) $(INIPARSER_OBJ) $(DISPLAY_SEC_OBJ) \
+         $(LIBNET_DSSYNC_OBJ) $(LIBNET_SAMSYNC_OBJ) \
+         $(SMBD_OBJ_BASE)
 
 CUPS_OBJ = client/smbspool.o $(PARAM_OBJ) $(LIBSMB_OBJ) \
                $(LIB_NONSMBD_OBJ) $(KRBCLIENT_OBJ) $(POPT_LIB_OBJ) \
@@ -1278,6 +1286,7 @@ SMBTORTURE_OBJ1 = torture/torture.o torture/nbio.o torture/scanner.o torture/uta
                torture/test_notify.o \
                torture/test_dbwrap_watch.o \
                torture/test_idmap_tdb_common.o \
+               torture/test_dbwrap_ctdb.o \
                torture/t_strappend.o
 
 SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) $(TLDAP_OBJ) \
@@ -1289,24 +1298,11 @@ SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) $(TLDAP_OBJ) \
        lib/filename_util.o \
        $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) $(LIBCLI_ECHO_OBJ)
 
-MASKTEST_OBJ = torture/masktest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
-               $(LIB_NONSMBD_OBJ) \
-               $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ)
-
 MSGTEST_OBJ = torture/msgtest.o $(PARAM_OBJ) $(LIBSMB_ERR_OBJ) \
                  $(LIB_NONSMBD_OBJ) \
                 $(LIBNDR_GEN_OBJ0)
 
-LOCKTEST_OBJ = torture/locktest.o $(PARAM_OBJ) $(LOCKING_OBJ) $(KRBCLIENT_OBJ) \
-               $(LIBSMB_OBJ) $(LIB_NONSMBD_OBJ) \
-               $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) $(FNAME_UTIL_OBJ)
-
-NSSTEST_OBJ = ../nsswitch/nsstest.o $(LIBSAMBAUTIL_OBJ)
-
-PDBTEST_OBJ = torture/pdbtest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
-               $(LIB_NONSMBD_OBJ) $(PASSDB_OBJ) $(GROUPDB_OBJ) \
-               $(SMBLDAP_OBJ) $(POPT_LIB_OBJ) \
-               $(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ)
+NSSTEST_OBJ = ../nsswitch/nsstest.o ../lib/util/setid.o $(LIBSAMBAUTIL_OBJ)
 
 VFSTEST_OBJ = torture/cmd_vfs.o torture/vfstest.o $(SMBD_OBJ_BASE) $(READLINE_OBJ) \
                torture/vfstest_chain.o
@@ -1385,14 +1381,6 @@ IDMAP_HASH_OBJ = \
                winbindd/idmap_hash/idmap_hash.o \
                winbindd/idmap_hash/mapfile.o
 
-IDMAP_ADEX_OBJ = \
-               winbindd/idmap_adex/idmap_adex.o \
-               winbindd/idmap_adex/cell_util.o \
-               winbindd/idmap_adex/likewise_cell.o \
-               winbindd/idmap_adex/provider_unified.o \
-               winbindd/idmap_adex/gc_util.o \
-               winbindd/idmap_adex/domain_util.o
-
 WINBINDD_OBJ1 = \
                winbindd/winbindd.o       \
                winbindd/winbindd_group.o \
@@ -1427,10 +1415,9 @@ WINBINDD_OBJ1 = \
                winbindd/wb_lookupsid.o \
                winbindd/wb_lookupsids.o \
                winbindd/wb_lookupname.o \
-               winbindd/wb_sid2uid.o \
-               winbindd/wb_sid2gid.o \
                winbindd/wb_uid2sid.o \
                winbindd/wb_gid2sid.o \
+               winbindd/wb_sids2xids.o \
                winbindd/wb_queryuser.o \
                winbindd/wb_lookupuseraliases.o \
                winbindd/wb_lookupusergroups.o \
@@ -1510,8 +1497,6 @@ WINBINDD_OBJ = \
                $(LIBCLI_DSSETUP_OBJ) \
                $(LIBCLI_LSA_OBJ) \
                $(LIBCLI_SAMR_OBJ) \
-               $(LIBCLI_NETLOGON_OBJ) \
-               rpc_client/init_netlogon.o \
                rpc_client/init_samr.o \
                $(PAM_ERRORS_OBJ)
 
@@ -1560,7 +1545,32 @@ NTLM_AUTH_OBJ = ${NTLM_AUTH_OBJ1} \
 
 
 VLP_OBJ = printing/tests/vlp.o \
-         ../lib/util/util_tdb.o \
+          ../lib/util/util_tdb.o \
+          ../lib/util/signal.o \
+          ../lib/util/debug.o \
+          ../lib/util/util_strlist.o \
+          ../lib/util/fault.o \
+          ../lib/util/become_daemon.o \
+          ../lib/util/substitute.o \
+          lib/util_sec.o \
+          ../lib/util/time.o \
+          ../lib/util/charset/util_str.o \
+          ../lib/util/charset/pull_push.o \
+          ../lib/util/charset/util_unistr_w.o \
+          ../lib/util/charset/codepoints.o \
+          ../lib/util/charset/iconv.o \
+          ../lib/util/charset/weird.o \
+          ../lib/util/charset/convert_string.o \
+          $(CHARSET_MACOSXFS_OBJ) \
+          ../lib/util/talloc_stack.o \
+          ../lib/util/smb_threads.o \
+          ../lib/util/xfile.o \
+          ../lib/util/util_file.o \
+          ../lib/util/util.o \
+          ../lib/util/util_str_common.o \
+          ../lib/util/data_blob.o \
+          ../dynconfig/dynconfig.o \
+         ../lib/util/setid.o \
          $(LIBSAMBAUTIL_OBJ) \
          param/util.o
 
@@ -1611,9 +1621,9 @@ pam_winbind: SHOWFLAGS bin/pam_winbind.@SHLIBEXT@
 
 gpext_modules:: $(GPEXT_MODULES)
 
-torture:: SHOWFLAGS basics $(TORTURE_PROGS) @SMBTORTURE4@
+torture:: SHOWFLAGS basics $(TORTURE_PROGS)
 
-smbtorture : SHOWFLAGS bin/smbtorture
+smbtorture3 : SHOWFLAGS bin/smbtorture3
 
 masktest : SHOWFLAGS bin/masktest
 
@@ -1677,18 +1687,18 @@ idl_full::
        @PIDL_OUTPUTDIR="autoconf/librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
         srcdir="$(srcdir)" $(srcdir)/script/build_idl.sh --full $(IDL_FILES)
 
-mkparam: ../lib/param/param_local.h ../lib/param/param_global.h param/param_global.h ../lib/param/param_proto.h ../lib/param/s3_param.h
+mkparam: autoconf/lib/param/param_local.h autoconf/lib/param/param_global.h autoconf/source3/param/param_global.h autoconf/lib/param/param_proto.h autoconf/lib/param/s3_param.h
 
-../lib/param/param_local.h:
-        $(PERL) ../script/mkparamdefs.pl $(srcdir)/../lib/param/param_functions.c --file ../lib/param/param_local.h --generate-scope=LOCAL
-../lib/param/param_global.h:
-        $(PERL) ../script/mkparamdefs.pl $(srcdir)/../lib/param/loadparm.c --file ../lib/param/param_global.h --generate-scope=GLOBAL
-param/param_global.h:
-        $(PERL) ../script/mkparamdefs.pl $(srcdir)/param/loadparm.c --file param/param_global.h --generate-scope=GLOBAL
-../lib/param/param_proto.h:
-        $(PERL) ../source4/script/mkproto.pl $(srcdir)/../lib/param/loadparm.c --public ../lib/param/param_proto.h  --private ../lib/param/param_proto.h
-../lib/param/s3_param.h:
-        $(PERL) ../script/mks3param.pl $(srcdir)/../lib/param/loadparm.c --file ../lib/param/s3_param.h
+autoconf/lib/param/param_local.h:
+        $(PERL) ../script/mkparamdefs.pl $(srcdir)/../lib/param/param_functions.c --file autoconf/lib/param/param_local.h --generate-scope=LOCAL
+autoconf/lib/param/param_global.h:
+        $(PERL) ../script/mkparamdefs.pl $(srcdir)/../lib/param/param_functions.c $(srcdir)/../lib/param/loadparm.c --file autoconf/lib/param/param_global.h --generate-scope=GLOBAL
+autoconf/source3/param/param_global.h:
+        $(PERL) ../script/mkparamdefs.pl $(srcdir)/../lib/param/param_functions.c $(srcdir)/param/loadparm.c --file autoconf/source3/param/param_global.h --generate-scope=GLOBAL
+autoconf/lib/param/param_proto.h:
+        $(PERL) ../source4/script/mkproto.pl $(srcdir)/../lib/param/param_functions.c $(srcdir)/../lib/param/loadparm.c --public autoconf/lib/param/param_proto.h  --private autoconf/lib/param/param_proto.h
+autoconf/lib/param/s3_param.h:
+        $(PERL) ../script/mks3param.pl $(srcdir)/../lib/param/param_functions.c $(srcdir)/../lib/param/loadparm.c --file autoconf/lib/param/s3_param.h
 
 
 #####################################################################
@@ -1831,13 +1841,6 @@ libsmb/libsmb_thread_posix.o: libsmb/libsmb_thread_posix.c
                $(COMPILE_CC) $(PTHREAD_CFLAGS) >/dev/null 2>&1
 ### End section of object files that require PTHREAD_CFLAGS
 
-lib/pidfile.o: lib/pidfile.c
-       @echo Compiling $*.c
-       @$(COMPILE_CC_PATH) && exit 0;\
-               echo "The following command failed:" 1>&2;\
-               echo "$(COMPILE_CC_PATH)" 1>&2;\
-               $(COMPILE_CC_PATH) >/dev/null 2>&1
-
 lib/version.o: lib/version.c include/autoconf/version.h
        @echo Compiling $*.c
        @$(COMPILE_CC_PATH) && exit 0;\
@@ -1861,197 +1864,196 @@ bin/.dummy:
          dir=bin $(MAKEDIR); fi
        @: >> $@ || : > $@ # what a fancy emoticon!
 
-bin/smbd: $(BINARY_PREREQS) $(SMBD_OBJ) $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT) @BUILD_POPT@
+bin/smbd: $(BINARY_PREREQS) $(SMBD_OBJ) $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT) @BUILD_POPT@
        @echo Linking $@
        @$(CC) -o $@ $(SMBD_OBJ) $(LDFLAGS) $(LDAP_LIBS) @SMBD_FAM_LIBS@ \
                $(KRB5LIBS) $(DYNEXP) $(PRINT_LIBS) $(AUTH_LIBS) \
                $(ACL_LIBS) $(PASSDB_LIBS) $(LIBS) $(DNSSD_LIBS) $(AVAHI_LIBS) \
-               $(POPT_LIBS) @SMBD_LIBS@ $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
+               $(POPT_LIBS) @SMBD_LIBS@ $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
                $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/nmbd: $(BINARY_PREREQS) $(NMBD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/nmbd: $(BINARY_PREREQS) $(NMBD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(NMBD_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
                @LIBWBCLIENT_STATIC@ $(LIBWBCLIENT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(POPT_LIBS) \
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(POPT_LIBS) \
                $(KRB5LIBS) $(LDAP_LIBS) $(ZLIB_LIBS)
 
-bin/swat: $(BINARY_PREREQS) $(SWAT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/swat: $(BINARY_PREREQS) $(SWAT_OBJ) $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT) @BUILD_POPT@
        @echo Linking $@
-       @$(CC) -o $@ $(SWAT_OBJ) $(LDFLAGS) $(DYNEXP) $(PRINT_LIBS) \
-         $(AUTH_LIBS) $(LIBS) $(PASSDB_LIBS) $(POPT_LIBS) $(KRB5LIBS) \
-         $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+       @$(CC) -o $@ $(SWAT_OBJ) $(LDFLAGS) $(LDAP_LIBS) @SMBD_FAM_LIBS@ \
+               $(KRB5LIBS) $(DYNEXP) $(PRINT_LIBS) $(AUTH_LIBS) \
+               $(ACL_LIBS) $(PASSDB_LIBS) $(LIBS) $(DNSSD_LIBS) $(AVAHI_LIBS) \
+               $(POPT_LIBS) @SMBD_LIBS@ $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
+               $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/rpcclient: $(BINARY_PREREQS) $(RPCCLIENT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/rpcclient: $(BINARY_PREREQS) $(RPCCLIENT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(LDFLAGS) $(RPCCLIENT_OBJ) \
                $(DYNEXP) $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) $(POPT_LIBS) \
-               $(KRB5LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
+               $(KRB5LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
                $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS) $(PASSDB_LIBS)
 
-bin/smbclient: $(BINARY_PREREQS) $(CLIENT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbclient: $(BINARY_PREREQS) $(CLIENT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(CLIENT_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) $(POPT_LIBS) \
                $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) $(DNSSD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/net: $(BINARY_PREREQS) $(NET_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT) $(LIBNETAPI)
+bin/net: $(BINARY_PREREQS) $(NET_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT) $(LIBNETAPI)
        @echo Linking $@
-       @$(CC) -o $@ $(NET_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
-               $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) \
-               $(PASSDB_LIBS) $(TERMLDFLAGS) $(TERMLIBS) $(NSCD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(LIBNETAPI_LIBS) \
-               $(ZLIB_LIBS)
+       @$(CC) -o $@ $(NET_OBJ) $(LDFLAGS) $(LDAP_LIBS) @SMBD_FAM_LIBS@ \
+               $(KRB5LIBS) $(DYNEXP) $(PRINT_LIBS) $(AUTH_LIBS) \
+               $(ACL_LIBS) $(PASSDB_LIBS) $(LIBS) $(DNSSD_LIBS) $(AVAHI_LIBS) \
+               $(POPT_LIBS) @SMBD_LIBS@ $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
+               $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS) $(LIBNETAPI_LIBS) $(TERMLDFLAGS) $(TERMLIBS)
 
-bin/profiles: $(BINARY_PREREQS) $(PROFILES_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/profiles: $(BINARY_PREREQS) $(PROFILES_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(PROFILES_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
-               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/smbspool: $(BINARY_PREREQS) $(CUPS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbspool: $(BINARY_PREREQS) $(CUPS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(CUPS_OBJ) $(DYNEXP) $(LDFLAGS) $(LIBS) \
                @LIBWBCLIENT_STATIC@ $(LIBWBCLIENT_LIBS) \
-               $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
+               $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(ZLIB_LIBS)
 
-bin/testparm: $(BINARY_PREREQS) $(TESTPARM_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/testparm: $(BINARY_PREREQS) $(TESTPARM_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(TESTPARM_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
-               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/smbta-util: $(BINARY_PREREQS) $(SMBTA_UTIL_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/smbta-util: $(BINARY_PREREQS) $(SMBTA_UTIL_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(SMBTA_UTIL_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
-               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/smbstatus: $(BINARY_PREREQS) $(STATUS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/smbstatus: $(BINARY_PREREQS) $(STATUS_OBJ) $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT) @BUILD_POPT@
        @echo Linking $@
-       @$(CC) -o $@ $(STATUS_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
-               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+       @$(CC) -o $@ $(STATUS_OBJ) $(LDFLAGS) $(LDAP_LIBS) @SMBD_FAM_LIBS@ \
+               $(KRB5LIBS) $(DYNEXP) $(PRINT_LIBS) $(AUTH_LIBS) \
+               $(ACL_LIBS) $(PASSDB_LIBS) $(LIBS) $(DNSSD_LIBS) $(AVAHI_LIBS) \
+               $(POPT_LIBS) @SMBD_LIBS@ $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
+               $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/smbcontrol: $(BINARY_PREREQS) $(SMBCONTROL_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/smbcontrol: $(BINARY_PREREQS) $(SMBCONTROL_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -DUSING_SMBCONTROL -o $@ \
                $(SMBCONTROL_OBJ) $(DYNEXP) $(LDFLAGS) \
                $(LIBS) $(LDAP_LIBS) @LIBUNWIND_PTRACE@ $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/smbtree: $(BINARY_PREREQS) $(SMBTREE_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbtree: $(BINARY_PREREQS) $(SMBTREE_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(SMBTREE_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/smbpasswd: $(BINARY_PREREQS) $(SMBPASSWD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbpasswd: $(BINARY_PREREQS) $(SMBPASSWD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(SMBPASSWD_OBJ) $(LDFLAGS) $(PASSDB_LIBS) \
                $(DYNEXP) $(LIBS) $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/pdbedit: $(BINARY_PREREQS) $(PDBEDIT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/pdbedit: $(BINARY_PREREQS) $(PDBEDIT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(PDBEDIT_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(POPT_LIBS) $(PASSDB_LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) \
-               $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+               $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/smbget: $(BINARY_PREREQS) $(SMBGET_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbget: $(BINARY_PREREQS) $(SMBGET_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(SMBGET_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(POPT_LIBS)  $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/nmblookup: $(BINARY_PREREQS) $(NMBLOOKUP_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/nmblookup: $(BINARY_PREREQS) $(NMBLOOKUP_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(NMBLOOKUP_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
-               $(POPT_LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(POPT_LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/smbtorture: $(BINARY_PREREQS) $(SMBTORTURE_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbtorture3: $(BINARY_PREREQS) $(SMBTORTURE_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT) $(IDMAP_UTIL_OBJ)
        @echo Linking $@
        @$(CC) -o $@ $(SMBTORTURE_OBJ) $(IDMAP_UTIL_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) \
-               $(LIBTDB_LIBS) $(ZLIB_LIBS) $(LIBWBCLIENT_LIBS)
+               $(LIBTDBS_LIBS) $(ZLIB_LIBS) $(LIBWBCLIENT_LIBS)
 
-bin/talloctort: $(BINARY_PREREQS) $(TALLOCTORT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/talloctort: $(BINARY_PREREQS) $(TALLOCTORT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(TALLOCTORT_OBJ) $(LDFLAGS) \
                $(DYNEXP) $(LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
 bin/replacetort: $(REPLACETORT_OBJ) @BUILD_POPT@ $(LIBTALLOC)
        @echo Linking $@
        @$(CC) -o $@ $(REPLACETORT_OBJ) $(LDFLAGS) \
                $(DYNEXP) $(LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS)
 
-bin/smbconftort: $(SMBCONFTORT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/smbconftort: $(SMBCONFTORT_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(SMBCONFTORT_OBJ) $(LDFLAGS) \
                $(DYNEXP) $(LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
 bin/pthreadpooltest: $(PTHREADPOOLTEST_OBJ)
        @echo Linking $@
        @$(CC) -o $@ $(PTHREADPOOLTEST_OBJ) $(LDFLAGS) $(LIBS) $(PTHREAD_LDFLAGS)
 
-bin/masktest: $(BINARY_PREREQS) $(MASKTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/masktest: $(BINARY_PREREQS) $(MASKTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(MASKTEST_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
                @LIBWBCLIENT_STATIC@ $(LIBWBCLIENT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(ZLIB_LIBS)
 
-bin/msgtest: $(BINARY_PREREQS) $(MSGTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/msgtest: $(BINARY_PREREQS) $(MSGTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(MSGTEST_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(ZLIB_LIBS)
 
-bin/smbcacls: $(BINARY_PREREQS) $(SMBCACLS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbcacls: $(BINARY_PREREQS) $(SMBCACLS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(SMBCACLS_OBJ) $(DYNEXP) $(LDFLAGS) \
                $(LIBS) $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/smbcquotas: $(BINARY_PREREQS) $(SMBCQUOTAS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbcquotas: $(BINARY_PREREQS) $(SMBCQUOTAS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(SMBCQUOTAS_OBJ) $(DYNEXP) $(LDFLAGS) \
                $(LIBS) $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
-bin/eventlogadm: $(BINARY_PREREQS) $(EVTLOGADM_OBJ) $(LIBTALLOC) $(LIBTDB)
+bin/eventlogadm: $(BINARY_PREREQS) $(EVTLOGADM_OBJ) $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(EVTLOGADM_OBJ) $(DYNEXP) $(LDFLAGS) \
-               $(LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBS) $(LDAP_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/sharesec: $(BINARY_PREREQS) $(SHARESEC_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB)
+bin/sharesec: $(BINARY_PREREQS) $(SHARESEC_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(SHARESEC_OBJ) $(DYNEXP) $(LDFLAGS) \
-               $(LIBS) $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBS) $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/locktest: $(BINARY_PREREQS) $(LOCKTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/locktest: $(BINARY_PREREQS) $(LOCKTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(LOCKTEST_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
                @LIBWBCLIENT_STATIC@ $(LIBWBCLIENT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(ZLIB_LIBS)
 
 bin/nsstest: $(BINARY_PREREQS) $(NSSTEST_OBJ) $(LIBTALLOC)
        @echo Linking $@
        @$(CC) -o $@ $(NSSTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(LIBTALLOC_LIBS)
 
-bin/pdbtest: $(BINARY_PREREQS) $(PDBTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
-       @echo Linking $@
-       @$(CC) -o $@ $(PDBTEST_OBJ) $(LDFLAGS) $(DYNEXP) \
-               $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(PASSDB_LIBS) \
-               $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
-
-bin/vfstest: $(BINARY_PREREQS) $(VFSTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/vfstest: $(BINARY_PREREQS) $(VFSTEST_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(VFSTEST_OBJ) $(LDFLAGS) $(TERMLDFLAGS) $(AVAHI_LIBS) \
                $(TERMLIBS) $(DYNEXP) $(PRINT_LIBS) $(AUTH_LIBS) $(DNSSD_LIBS) \
                $(ACL_LIBS) $(LIBS) $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) \
-               @SMBD_LIBS@ $(NSCD_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
+               @SMBD_LIBS@ $(NSCD_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
                $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
 
 bin/log2pcap: $(BINARY_PREREQS) $(LOG2PCAP_OBJ) @BUILD_POPT@ $(LIBTALLOC)
@@ -2059,24 +2061,24 @@ bin/log2pcap: $(BINARY_PREREQS) $(LOG2PCAP_OBJ) @BUILD_POPT@ $(LIBTALLOC)
        @$(CC) -o $@ $(LOG2PCAP_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(POPT_LIBS) $(LIBS) $(LIBTALLOC_LIBS)
 
-bin/locktest2: $(BINARY_PREREQS) $(LOCKTEST2_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/locktest2: $(BINARY_PREREQS) $(LOCKTEST2_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(LOCKTEST2_OBJ) $(LDFLAGS) $(DYNEXP) \
                @LIBWBCLIENT_STATIC@ $(LIBWBCLIENT_LIBS) \
                $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(ZLIB_LIBS)
 
 bin/debug2html: $(BINARY_PREREQS) $(DEBUG2HTML_OBJ) @BUILD_POPT@ $(LIBTALLOC)
        @echo Linking $@
        @$(CC) -o $@ $(DEBUG2HTML_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(LIBTALLOC_LIBS)
 
-bin/smbfilter: $(BINARY_PREREQS) $(SMBFILTER_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/smbfilter: $(BINARY_PREREQS) $(SMBFILTER_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(SMBFILTER_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
                @LIBWBCLIENT_STATIC@ $(LIBWBCLIENT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(ZLIB_LIBS)
 
 bin/versiontest: $(BINARY_PREREQS) lib/version_test.o $(VERSION_OBJ)
        @echo Linking $@
@@ -2156,6 +2158,38 @@ showlibtdb:
 
 showlibs:: showlibtdb
 
+#-------------------------------------------------------------------
+#
+# libntdb
+#
+#-------------------------------------------------------------------
+
+LIBNTDB_OBJ0 = @LIBNTDB_OBJ0@
+LIBNTDB_OBJ = $(LIBNTDB_OBJ0) $(LIBREPLACE_OBJ)
+
+LIBNTDB_STATIC_TARGET=@LIBNTDB_STATIC_TARGET@
+
+$(LIBNTDB_STATIC_TARGET): $(BINARY_PREREQS) $(LIBNTDB_OBJ0)
+       @echo Linking non-shared library $@
+       @-$(AR) -rc $@ $(LIBNTDB_OBJ0)
+
+libntdb: $(LIBNTDB)
+
+cleanlibntdb::
+       -rm -f \
+               $(LIBNTDB_STATIC_TARGET)
+
+libs:: libntdb
+cleanlibs:: cleanlibntdb
+
+showlibntdb:
+       @echo  ""
+       @echo "LIBNTDB_STATIC                = @LIBNTDB_STATIC@"
+       @echo "LIBNTDB_STATIC_TARGET         = $(LIBNTDB_STATIC_TARGET)"
+       @echo "LIBNTDB                       = $(LIBNTDB)"
+
+showlibs:: showlibntdb
+
 #-------------------------------------------------------------------
 #
 # libwbclient
@@ -2286,9 +2320,7 @@ LIBNETAPI_OBJ  = $(LIBNETAPI_OBJ0) $(LIBNET_OBJ) \
                 $(LIBCLI_SRVSVC_OBJ) \
                 $(LIBCLI_LSA_OBJ) \
                 $(LIBCLI_SAMR_OBJ) \
-                $(LIBCLI_NETLOGON_OBJ) \
                 $(RPC_CLIENT_SCHANNEL_OBJ) \
-                rpc_client/init_netlogon.o \
                 rpc_client/init_samr.o
 
 LIBNETAPI_SHARED_TARGET=@LIBNETAPI_SHARED_TARGET@
@@ -2302,10 +2334,10 @@ LIBNETAPI_HEADERS=$(srcdir)/lib/netapi/netapi.h
 $(LIBNETAPI_SYMS): $(LIBNETAPI_HEADERS)
        @$(MKSYMS_SH) $(AWK) $@ $(LIBNETAPI_HEADERS)
 
-$(LIBNETAPI_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBNETAPI_OBJ) $(LIBNETAPI_SYMS) $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+$(LIBNETAPI_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBNETAPI_OBJ) $(LIBNETAPI_SYMS) $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking shared library $@
        @$(SHLD_DSO) $(LIBNETAPI_OBJ) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(LIBS) \
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(LIBS) \
                $(LDAP_LIBS) $(KRB5LIBS) $(NSCD_LIBS) $(ZLIB_LIBS) \
                @SONAMEFLAG@`basename $@`
 
@@ -2383,10 +2415,10 @@ LIBSMBCLIENT_HEADERS=$(srcdir)/include/libsmbclient.h
 $(LIBSMBCLIENT_SYMS): $(LIBSMBCLIENT_HEADERS)
        @$(MKSYMS_SH) $(AWK) $@ $(LIBSMBCLIENT_HEADERS)
 
-$(LIBSMBCLIENT_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBSMBCLIENT_OBJ) $(LIBSMBCLIENT_THREAD_OBJ) $(LIBSMBCLIENT_SYMS) $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+$(LIBSMBCLIENT_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBSMBCLIENT_OBJ) $(LIBSMBCLIENT_THREAD_OBJ) $(LIBSMBCLIENT_SYMS) $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking shared library $@
        @$(SHLD_DSO) $(LIBSMBCLIENT_OBJ) $(LIBSMBCLIENT_THREAD_OBJ) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) $(LIBS) \
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) $(LIBS) \
                $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) $(ZLIB_LIBS) $(PTHREAD_LDFLAGS) \
                @SONAMEFLAG@`basename $@`
 
@@ -2471,10 +2503,10 @@ LIBSMBSHAREMODES_HEADERS=$(srcdir)/include/smb_share_modes.h
 $(LIBSMBSHAREMODES_SYMS): $(LIBSMBSHAREMODES_HEADERS)
        @$(MKSYMS_SH) $(AWK) $@ $(LIBSMBSHAREMODES_HEADERS)
 
-$(LIBSMBSHAREMODES_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBSMBSHAREMODES_OBJ) $(LIBSMBSHAREMODES_SYMS) $(LIBTALLOC) $(LIBTDB)
+$(LIBSMBSHAREMODES_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBSMBSHAREMODES_OBJ) $(LIBSMBSHAREMODES_SYMS) $(LIBTALLOC) $(LIBTDBS)
        @echo Linking shared library $@
        @$(SHLD_DSO) $(LIBSMBSHAREMODES_OBJ) \
-               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
+               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
                @SONAMEFLAG@`basename $@`
 
 $(LIBSMBSHAREMODES_SHARED_TARGET): $(LIBSMBSHAREMODES_SHARED_TARGET_SONAME)
@@ -2602,19 +2634,19 @@ bin/librpc_rpcecho.@SHLIBEXT@: $(BINARY_PREREQS) $(RPC_RPCECHO_OBJ)
        @echo "Linking $@"
        @$(SHLD_LIBRARY) $(RPC_RPCECHO_OBJ)
 
-bin/winbindd: $(BINARY_PREREQS) $(WINBINDD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/winbindd: $(BINARY_PREREQS) $(WINBINDD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo "Linking $@"
        @$(CC) -o $@ $(WINBINDD_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(AUTH_LIBS) \
-               $(PASSDB_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) \
+               $(PASSDB_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) \
                $(ZLIB_LIBS)
 
-bin/vlp: $(BINARY_PREREQS) $(VLP_OBJ) $(LIBTDB) $(LIBTALLOC)
+bin/vlp: $(BINARY_PREREQS) $(VLP_OBJ) $(LIBTDBS) $(LIBTALLOC)
        @echo "Linking $@"
        @$(CC) -o $@ $(VLP_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) $(POPT_LIBS) \
                $(LIBTALLOC_LIBS) \
-               $(LIBTDB_LIBS)
+               $(LIBTDBS_LIBS)
 
 @WINBIND_NSS@: $(BINARY_PREREQS) $(WINBIND_NSS_OBJ)
        @echo "Linking $@"
@@ -2622,10 +2654,10 @@ bin/vlp: $(BINARY_PREREQS) $(VLP_OBJ) $(LIBTDB) $(LIBTALLOC)
                $(LIBREPLACE_LIBS) $(PTHREAD_LDFLAGS) \
                @SONAMEFLAG@`basename $@`@NSSSONAMEVERSIONSUFFIX@
 
-@WINBIND_WINS_NSS@: $(BINARY_PREREQS) $(WINBIND_WINS_NSS_OBJ) $(LIBTALLOC) $(LIBTDB)
+@WINBIND_WINS_NSS@: $(BINARY_PREREQS) $(WINBIND_WINS_NSS_OBJ) $(LIBTALLOC) $(LIBTDBS)
        @echo "Linking $@"
        @$(SHLD) $(LDSHFLAGS) -o $@ $(WINBIND_WINS_NSS_OBJ) \
-               $(LDAP_LIBS) $(KRB5LIBS) $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS) \
+               $(LDAP_LIBS) $(KRB5LIBS) $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(ZLIB_LIBS) \
                @SONAMEFLAG@`basename $@`@NSSSONAMEVERSIONSUFFIX@
 
 bin/winbind_krb5_locator.@SHLIBEXT@: $(BINARY_PREREQS) $(WINBIND_KRB5_LOCATOR_OBJ) $(LIBWBCLIENT)
@@ -2654,10 +2686,6 @@ bin/script.@SHLIBEXT@: $(BINARY_PREREQS) $(AUTH_SCRIPT_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(AUTH_SCRIPT_OBJ)
 
-bin/netlogond.@SHLIBEXT@: $(BINARY_PREREQS) $(AUTH_NETLOGOND_OBJ)
-       @echo "Building plugin $@"
-       @$(SHLD_MODULE) $(AUTH_NETLOGOND_OBJ)
-
 bin/winbind.@SHLIBEXT@: $(BINARY_PREREQS) $(AUTH_WINBIND_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(AUTH_WINBIND_OBJ)
@@ -2680,10 +2708,6 @@ bin/ldapsam.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ldap.o passdb/pdb_nds.o \
        @$(SHLD_MODULE) passdb/pdb_ldap.o passdb/pdb_nds.o passdb/pdb_ipa.o \
                        passdb/pdb_ldap_util.o $(LDAP_LIBS)
 
-bin/ads.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_ads.o
-       @echo "Building plugin $@"
-       @$(SHLD_MODULE) passdb/pdb_ads.o
-
 bin/tdbsam.@SHLIBEXT@: $(BINARY_PREREQS) passdb/pdb_tdb.o
        @echo "Building plugin $@"
        @$(SHLD_MODULE) passdb/pdb_tdb.o
@@ -2712,13 +2736,13 @@ bin/ad.@SHLIBEXT@: $(BINARY_PREREQS) winbindd/idmap_ad.o
        @echo "Building plugin $@"
        @$(SHLD_MODULE) winbindd/idmap_ad.o
 
-bin/hash.@SHLIBEXT@: $(BINARY_PREREQS) $(IDMAP_HASH_OBJ)
+bin/rfc2307.@SHLIBEXT@: $(BINARY_PREREQS) winbindd/idmap_rfc2307.o
        @echo "Building plugin $@"
-       @$(SHLD_MODULE) $(IDMAP_HASH_OBJ)
+       @$(SHLD_MODULE) winbindd/idmap_rfc2307.o
 
-bin/adex.@SHLIBEXT@: $(BINARY_PREREQS) $(IDMAP_ADEX_OBJ)
+bin/hash.@SHLIBEXT@: $(BINARY_PREREQS) $(IDMAP_HASH_OBJ)
        @echo "Building plugin $@"
-       @$(SHLD_MODULE) $(IDMAP_ADEX_OBJ)
+       @$(SHLD_MODULE) $(IDMAP_HASH_OBJ)
 
 bin/tdb2.@SHLIBEXT@: $(BINARY_PREREQS) winbindd/idmap_tdb2.o $(IDMAP_RW_OBJ)
        @echo "Building plugin $@"
@@ -2755,6 +2779,10 @@ bin/fake_perms.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_FAKE_PERMS_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_FAKE_PERMS_OBJ)
 
+bin/fake_acls.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_FAKE_ACLS_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_FAKE_ACLS_OBJ)
+
 bin/default_quota.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_DEFAULT_QUOTA_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_DEFAULT_QUOTA_OBJ)
@@ -2811,9 +2839,9 @@ bin/zfsacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_ZFSACL_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_ZFSACL_OBJ) @ZFSACL_LIBS@
 
-bin/irixacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_IRIXACL_OBJ)
+bin/nfs4acl_xattr.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_NFS4ACL_XATTR_OBJ)
        @echo "Building plugin $@"
-       @$(SHLD_MODULE) $(VFS_IRIXACL_OBJ)
+       @$(SHLD_MODULE) $(VFS_NFS4ACL_XATTR_OBJ)
 
 bin/hpuxacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_HPUXACL_OBJ)
        @echo "Building plugin $@"
@@ -2851,10 +2879,6 @@ bin/gpfs.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_GPFS_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_GPFS_OBJ)
 
-bin/gpfs_hsm_notify.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_GPFS_HSM_NOTIFY_OBJ)
-       @echo "Building plugin $@"
-       @$(SHLD_MODULE) $(VFS_GPFS_HSM_NOTIFY_OBJ)
-
 bin/notify_fam.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_NOTIFY_FAM_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_NOTIFY_FAM_OBJ) @SMB_FAM_LIBS@
@@ -2879,6 +2903,10 @@ bin/aio_pthread.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_AIO_PTHREAD_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_AIO_PTHREAD_OBJ)
 
+bin/aio_posix.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_AIO_POSIX_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_AIO_POSIX_OBJ)
+
 bin/aio_linux.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_AIO_LINUX_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_AIO_LINUX_OBJ)
@@ -2935,101 +2963,113 @@ bin/time_audit.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_TIME_AUDIT_OBJ)
        @echo "Building plugin $@"
        @$(SHLD_MODULE) $(VFS_TIME_AUDIT_OBJ)
 
+bin/media_harmony.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_MEDIA_HARMONY_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_MEDIA_HARMONY_OBJ)
+
+bin/btrfs.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_BTRFS_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_BTRFS_OBJ)
+
+bin/ceph.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_CEPH_OBJ)
+       @echo "Building plugin $@"
+       @$(SHLD_MODULE) $(VFS_CEPH_OBJ)
+
 #########################################################
 ## IdMap NSS plugins
 
 ## None here right now
 #########################################################
 
-bin/wbinfo: $(BINARY_PREREQS) $(WBINFO_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/wbinfo: $(BINARY_PREREQS) $(WBINFO_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(LDFLAGS) $(WBINFO_OBJ) $(DYNEXP) $(LIBS) \
-               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) \
+               $(LDAP_LIBS) $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) \
                $(LIBWBCLIENT_LIBS)
 
 bin/ntlm_auth: $(BINARY_PREREQS) $(NTLM_AUTH_OBJ) $(PARAM_OBJ) \
-       $(LIB_NONSMBD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+       $(LIB_NONSMBD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo Linking $@
        @$(CC) -o $@ $(LDFLAGS) $(DYNEXP) $(NTLM_AUTH_OBJ) \
                $(PARAM_OBJ) $(LIB_NONSMBD_OBJ) $(LIBS) $(ZLIB_LIBS) \
                $(POPT_LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(NSCD_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS) @INIPARSERLIBS@
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS) @INIPARSERLIBS@
 
-bin/pam_smbpass.@SHLIBEXT@: $(BINARY_PREREQS) $(PAM_SMBPASS_OBJ) $(LIBTALLOC) $(LIBWBCLIENT) $(LIBTDB)
+bin/pam_smbpass.@SHLIBEXT@: $(BINARY_PREREQS) $(PAM_SMBPASS_OBJ) $(LIBTALLOC) $(LIBWBCLIENT) $(LIBTDBS)
        @echo "Linking shared library $@"
        @$(SHLD) $(LDSHFLAGS) -o $@ $(PAM_SMBPASS_OBJ) -lpam $(DYNEXP) \
                $(LIBS) $(LDAP_LIBS) $(NSCD_LIBS) $(KRB5LIBS) $(ZLIB_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(LIBWBCLIENT_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS) $(LIBWBCLIENT_LIBS)
 
-bin/tdbbackup: $(BINARY_PREREQS) $(TDBBACKUP_OBJ) $(LIBTALLOC) $(LIBTDB)
+bin/tdbbackup: $(BINARY_PREREQS) $(TDBBACKUP_OBJ) $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(LDFLAGS) $(TDBBACKUP_OBJ) $(DYNEXP) \
-               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/tdbtool: $(BINARY_PREREQS) $(TDBTOOL_OBJ) $(LIBTALLOC) $(LIBTDB)
+bin/tdbtool: $(BINARY_PREREQS) $(TDBTOOL_OBJ) $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(LDFLAGS) $(TDBTOOL_OBJ) $(DYNEXP) \
-               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/tdbdump: $(BINARY_PREREQS) $(TDBDUMP_OBJ) $(LIBTDB)
+bin/tdbdump: $(BINARY_PREREQS) $(TDBDUMP_OBJ) $(LIBTDBS)
        @echo Linking $@
-       @$(CC) -o $@ $(LDFLAGS) $(TDBDUMP_OBJ) $(DYNEXP) $(LIBTDB_LIBS) $(LIBREPLACE_LIBS)
+       @$(CC) -o $@ $(LDFLAGS) $(TDBDUMP_OBJ) $(DYNEXP) $(LIBTDBS_LIBS) $(LIBREPLACE_LIBS)
 
-bin/tdbrestore: $(BINARY_PREREQS) $(TDBRESTORE_OBJ) $(LIBTDB)
+bin/tdbrestore: $(BINARY_PREREQS) $(TDBRESTORE_OBJ) $(LIBTDBS)
        @echo Linking $@
-       @$(CC) -o $@ $(LDFLAGS) $(TDBRESTORE_OBJ) $(DYNEXP) $(LIBTDB_LIBS) $(LIBREPLACE_LIBS)
+       @$(CC) -o $@ $(LDFLAGS) $(TDBRESTORE_OBJ) $(DYNEXP) $(LIBTDBS_LIBS) $(LIBREPLACE_LIBS)
 
-bin/tdbtorture: $(BINARY_PREREQS) $(TDBTORTURE_OBJ) $(LIBTALLOC) $(LIBTDB)
+bin/tdbtorture: $(BINARY_PREREQS) $(TDBTORTURE_OBJ) $(LIBTALLOC) $(LIBTDBS)
        @echo Linking $@
        @$(CC) -o $@ $(LDFLAGS) $(TDBTORTURE_OBJ) $(DYNEXP) \
-               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
 bin/timelimit: script/tests/timelimit.o
        @echo Linking $@
        @$(CC) -o $@ $(DYNEXP) script/tests/timelimit.o $(LDFLAGS)
 
-bin/rpc_open_tcp: $(BINARY_PREREQS) $(RPC_OPEN_TCP_OBJ) $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/rpc_open_tcp: $(BINARY_PREREQS) $(RPC_OPEN_TCP_OBJ) $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo "Linking $@"
        @$(CC) -o $@ $(RPC_OPEN_TCP_OBJ) $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(LIBTALLOC_LIBS) $(LIBWBCLIENT_LIBS) \
                $(LDAP_LIBS) $(KRB5LIBS) $(NSCD_LIBS)
 
-bin/test_lp_load: $(BINARY_PREREQS) $(TEST_LP_LOAD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/test_lp_load: $(BINARY_PREREQS) $(TEST_LP_LOAD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo "Linking $@"
        @$(CC) -o $@ $(TEST_LP_LOAD_OBJ) \
                $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(LDAP_LIBS) $(LIBWBCLIENT_LIBS) \
-               $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(POPT_LIBS) $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
-bin/dbwrap_tool: $(DBWRAP_TOOL_OBJ) $(LIBTALLOC) $(LIBTDB)
+bin/dbwrap_tool: $(DBWRAP_TOOL_OBJ) $(LIBTALLOC) $(LIBTDBS)
        @echo "Linking $@"
        @$(CC) -o $@ $(DBWRAP_TOOL_OBJ)\
                $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(LDAP_LIBS) \
                $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
 install-dbwrap_tool:: bin/dbwrap_tool
        @$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(BINDIR) $<
 
-bin/dbwrap_torture: $(DBWRAP_TORTURE_OBJ) $(LIBTALLOC) $(LIBTDB)
+bin/dbwrap_torture: $(DBWRAP_TORTURE_OBJ) $(LIBTALLOC) $(LIBTDBS) $(POPT_LIBS)
        @echo "Linking $@"
        @$(CC) -o $@ $(DBWRAP_TORTURE_OBJ)\
                $(LDFLAGS) $(DYNEXP) $(LIBS) \
                $(LDAP_LIBS) \
                $(POPT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
 install-dbwrap_torture:: bin/dbwrap_torture
        @$(SHELL) script/installbin.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(BINDIR) $<
 
-bin/split_tokens: $(BINARY_PREREQS) $(SPLIT_TOKENS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
+bin/split_tokens: $(BINARY_PREREQS) $(SPLIT_TOKENS_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTDBS) $(LIBWBCLIENT)
        @echo "Linking $@"
        @$(CC) -o $@ $(SPLIT_TOKENS_OBJ) \
                $(LDFLAGS) $(DYNEXP) \
                $(LIBS) $(POPT_LIBS) \
                $(LDAP_LIBS) $(LIBWBCLIENT_LIBS) \
-               $(LIBTALLOC_LIBS) $(LIBTDB_LIBS)
+               $(LIBTALLOC_LIBS) $(LIBTDBS_LIBS)
 
 install:: installservers installbin installman \
                installscripts installdat installmodules @SWAT_INSTALL_TARGETS@ \
@@ -3065,19 +3105,15 @@ installmodules:: modules installdirs
        @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(PDBLIBDIR) $(PDB_MODULES)
        @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(IDMAPLIBDIR) $(IDMAP_MODULES)
        @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(NSSINFOLIBDIR) $(NSS_INFO_MODULES)
-       @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(CHARSETLIBDIR) $(CHARSET_MODULES)
        @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(AUTHLIBDIR) $(AUTH_MODULES)
        @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(GPEXTLIBDIR) $(GPEXT_MODULES)
        @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(PERFCOUNTLIBDIR) $(PERFCOUNT_MODULES)
        @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(PDBLIBDIR) ldapsam.@SHLIBEXT@ NDS_ldapsam.@SHLIBEXT@
-       @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(PDBLIBDIR) ldapsam.@SHLIBEXT@ NDS_ldapsam_compat.@SHLIBEXT@
-       @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(PDBLIBDIR) ldapsam.@SHLIBEXT@ ldapsam_compat.@SHLIBEXT@
        @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) rhosts.@SHLIBEXT@ hostsequiv.@SHLIBEXT@
        @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) sam.@SHLIBEXT@ sam_ignoredomain.@SHLIBEXT@
        @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) domain.@SHLIBEXT@ trustdomain.@SHLIBEXT@ ntdomain.@SHLIBEXT@
        @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(AUTHLIBDIR) builtin.@SHLIBEXT@ guest.@SHLIBEXT@ fixed_challenge.@SHLIBEXT@ name_to_ntstatus.@SHLIBEXT@
        @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(NSSINFOLIBDIR) ../idmap/ad.@SHLIBEXT@ rfc2307.@SHLIBEXT@ sfu.@SHLIBEXT@ sfu20.@SHLIBEXT@
-       @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(NSSINFOLIBDIR) ../idmap/adex.@SHLIBEXT@ adex.@SHLIBEXT@
        @$(SHELL) $(srcdir)/script/linkmodules.sh $(DESTDIR)$(NSSINFOLIBDIR) ../idmap/hash.@SHLIBEXT@ hash.@SHLIBEXT@
 
 installscripts:: installdirs
@@ -3174,7 +3210,6 @@ uninstallmodules::
        @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(VFSLIBDIR) $(VFS_MODULES)
        @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(PDBLIBDIR) $(PDB_MODULES)
        @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(IDMAPLIBDIR) $(IDMAP_MODULES)
-       @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(CHARSETLIBDIR) $(CHARSET_MODULES)
        @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(AUTHLIBDIR) $(AUTH_MODULES)
        @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(GPEXTLIBDIR) $(GPEXT_MODULES)
        @$(SHELL) $(srcdir)/script/uninstallmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(PERFCOUNTLIBDIR) $(PERFCOUNT_MODULES)
@@ -3208,12 +3243,11 @@ cleanlibs::
 clean:: cleanlibs
        -rm -f include/build_env.h
        -rm -f smbd/build_options.c
-       -rm -f param/param_local.h
-       -rm -f param/param_global.h
-       -rm -f ../lib/param/param_local.h
-       -rm -f ../lib/param/param_global.h
-       -rm -f ../lib/param/param_proto.h
-       -rm -f ../lib/param/s3_param.h
+       -rm -f autoconf/lib/param/param_local.h
+       -rm -f autoconf/lib/param/param_global.h
+       -rm -f autoconf/lib/param/param_proto.h
+       -rm -f autoconf/lib/param/s3_param.h
+       -rm -f autoconf/source3/param/param_global.h
        -rm -f $(PRECOMPILED_HEADER)
        -rm -f core */*~ *~ \
                */*.o */*/*.o */*/*/*.o */*/*/*/*.o \
@@ -3254,18 +3288,10 @@ distclean:: realclean
 
 realdistclean:: distclean
        -rm -f include/autoconf/config.h.in
-       -rm -f include/version.h
+       -rm -f include/autoconf/version.h
+       -rm -f autoconf/librpc/gen_ndr/*.[ch]
        -rm -f configure
 
-# this target is really just for my use. It only works on a limited
-# range of machines and is used to produce a list of potentially
-# dead (ie. unused) functions in the code. (tridge)
-finddead::
-       nm */*.o |grep 'U ' | awk '{print $$2}' | sort -u > nmused.txt
-       nm */*.o |grep 'T ' | awk '{print $$3}' | sort -u > nmfns.txt
-       comm -13 nmused.txt nmfns.txt
-
-
 # when configure.in is updated, reconfigure
 $(srcdir)/configure: $(srcdir)/configure.in
        @echo "WARNING: you need to rerun ./autogen.sh"
@@ -3315,7 +3341,7 @@ test_pam_modules:: pam_modules
 ## Targets for 'make test'
 ##
 
-valgrindtest:: all torture timelimit
+valgrindtest:: all torture timelimit bin/smbtorture
        @echo Running Test suite with valgrind
        @$(MAKE) test \
         NMBD_VALGRIND="xterm -n nmbd -e valgrind -q --db-attach=yes --num-callers=30" \
@@ -3327,7 +3353,7 @@ selftestdir = ../selftest
 
 S3_LD_LIBPATH_OVERRIDE = $(LIB_PATH_VAR)="$(builddir)/bin:$$$(LIB_PATH_VAR)"
 
-test:: all torture timelimit
+test:: all torture timelimit bin/smbtorture
        @LIB_PATH_VAR=$(LIB_PATH_VAR) $(S3_LD_LIBPATH_OVERRIDE) \
                NSS_WRAPPER_WINBIND_SO_PATH="$(srcdir)/../nsswitch/libnss_winbind.so" \
                SELFTESTDIR="$(selftestdir)" SELFTESTPREFIX="$(selftest_prefix)" \
@@ -3335,7 +3361,7 @@ test:: all torture timelimit
                VFSLIBDIR="$(builddir)/bin" \
                RUN_FROM_BUILD_FARM="$(RUN_FROM_BUILD_FARM)" \
                SUBUNIT_FORMATTER="$(SUBUNIT_FORMATTER)" \
-               PERL="$(PERL)" PYTHON="$(PYTHON)" \
+               PERL="$(PERL)" PYTHON="$(PYTHON)" PYTHONPATH="$(srcdir)/../bin/python" \
                $(srcdir)/selftest/s3-selftest.sh
 
 test-%:
@@ -3388,21 +3414,17 @@ libnetapi_examples: libnetapi
 clean_libnetapi_examples:
        $(MAKE) -C lib/netapi/examples clean
 
-.PHONY: bin/smbtorture4 bin/ndrdump4
-
-bin/smbtorture4: $(BINARY_PREREQS)
-       $(MAKE) -f Makefile-smbtorture4 bin/smbtorture4
+.PHONY: bin/smbtorture
 
-bin/ndrdump4: $(BINARY_PREREQS)
-       $(MAKE) -f Makefile-smbtorture4 bin/ndrdump4
+bin/smbtorture: $(BINARY_PREREQS)
+       $(MAKE) -f Makefile-smbtorture bin/smbtorture
 
 .PHONY: vfs_examples
 
 vfs_examples:
        ( \
        cd ../examples/VFS && \
-       ./autogen.sh && \
        ./configure && \
-       make clean && \
-       make \
+       $(MAKE) clean && \
+       $(MAKE) \
        )