# the directory where pid files go
PIDDIR = @piddir@
+# the directory where nmbd listens on the unexpected socket
+NMBDSOCKETDIR = @nmbdsocketdir@
+
FLAGS = -I. \
-I$(srcdir) \
@FLAGS1@ \
$(ISA) \
-I$(srcdir)/lib \
-I.. \
- -I../source4 \
-D_SAMBA_BUILD_=3
PATH_FLAGS = -DSMB_PASSWD_FILE=\"$(SMB_PASSWD_FILE)\" \
-DCODEPAGEDIR=\"$(CODEPAGEDIR)\" \
-DCACHEDIR=\"$(CACHEDIR)\" \
-DSTATEDIR=\"$(STATEDIR)\" \
+ -DNMBDSOCKETDIR=\"$(NMBDSOCKETDIR)\" \
-DLOCALEDIR=\"$(LOCALEDIR)\"
# Note that all executable programs now provide for an optional executable suffix.
VFS_MODULES = @VFS_MODULES@
PERFCOUNT_MODULES = @PERFCOUNT_MODULES@
PDB_MODULES = @PDB_MODULES@
-RPC_MODULES = @RPC_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) $(RPC_MODULES) $(IDMAP_MODULES) \
+MODULES = $(VFS_MODULES) $(PDB_MODULES) $(IDMAP_MODULES) \
$(CHARSET_MODULES) $(AUTH_MODULES) $(NSS_INFO_MODULES) \
$(GPEXT_MODULES) $(PERFCOUNT_MODULES)
LIBNDR_XATTR_OBJ = librpc/gen_ndr/ndr_xattr.o \
../librpc/ndr/ndr_xattr.o
-LIBCLI_SPOOLSS_OBJ = librpc/gen_ndr/cli_spoolss.o \
- librpc/gen_ndr/ndr_spoolss_c.o \
+LIBCLI_SPOOLSS_OBJ = librpc/gen_ndr/ndr_spoolss_c.o \
rpc_client/cli_spoolss.o \
rpc_client/init_spoolss.o
-LIBCLI_EVENTLOG_OBJ = librpc/gen_ndr/cli_eventlog.o \
- librpc/gen_ndr/ndr_eventlog_c.o
+LIBCLI_EVENTLOG_OBJ = librpc/gen_ndr/ndr_eventlog_c.o
-LIBCLI_WINREG_OBJ = librpc/gen_ndr/cli_winreg.o \
- librpc/gen_ndr/ndr_winreg_c.o
+LIBCLI_WINREG_OBJ = librpc/gen_ndr/ndr_winreg_c.o
-LIBCLI_NTSVCS_OBJ = librpc/gen_ndr/cli_ntsvcs.o \
- librpc/gen_ndr/ndr_ntsvcs_c.o
+LIBCLI_NTSVCS_OBJ = librpc/gen_ndr/ndr_ntsvcs_c.o
-LIBCLI_DRSUAPI_OBJ = librpc/gen_ndr/cli_drsuapi.o \
- librpc/gen_ndr/ndr_drsuapi_c.o
+LIBCLI_DRSUAPI_OBJ = librpc/gen_ndr/ndr_drsuapi_c.o
-LIBCLI_DFS_OBJ = librpc/gen_ndr/cli_dfs.o \
- librpc/gen_ndr/ndr_dfs_c.o
+LIBCLI_DFS_OBJ = librpc/gen_ndr/ndr_dfs_c.o
-LIBCLI_ECHO_OBJ = librpc/gen_ndr/cli_echo.o \
- librpc/gen_ndr/ndr_echo_c.o
+LIBCLI_ECHO_OBJ = librpc/gen_ndr/ndr_echo_c.o
-LIBCLI_INITSHUTDOWN_OBJ = librpc/gen_ndr/cli_initshutdown.o \
- librpc/gen_ndr/ndr_initshutdown_c.o
+LIBCLI_INITSHUTDOWN_OBJ = librpc/gen_ndr/ndr_initshutdown_c.o
-LIBCLI_DSSETUP_OBJ = librpc/gen_ndr/cli_dssetup.o \
- librpc/gen_ndr/ndr_dssetup_c.o
+LIBCLI_DSSETUP_OBJ = librpc/gen_ndr/ndr_dssetup_c.o
-LIBCLI_SVCCTL_OBJ = librpc/gen_ndr/cli_svcctl.o \
- librpc/gen_ndr/ndr_svcctl_c.o
+LIBCLI_SVCCTL_OBJ = librpc/gen_ndr/ndr_svcctl_c.o
-LIBCLI_WKSSVC_OBJ = librpc/gen_ndr/cli_wkssvc.o \
- librpc/gen_ndr/ndr_wkssvc_c.o
+LIBCLI_WKSSVC_OBJ = librpc/gen_ndr/ndr_wkssvc_c.o
-LIBCLI_SRVSVC_OBJ = librpc/gen_ndr/cli_srvsvc.o \
- librpc/gen_ndr/ndr_srvsvc_c.o
+LIBCLI_SRVSVC_OBJ = librpc/gen_ndr/ndr_srvsvc_c.o
-LIBCLI_LSA_OBJ = librpc/gen_ndr/cli_lsa.o \
- librpc/gen_ndr/ndr_lsa_c.o \
+LIBCLI_LSA_OBJ = librpc/gen_ndr/ndr_lsa_c.o \
rpc_client/cli_lsarpc.o \
rpc_client/init_lsa.o
-LIBCLI_SAMR_OBJ = librpc/gen_ndr/cli_samr.o \
- librpc/gen_ndr/ndr_samr_c.o \
+LIBCLI_SAMR_OBJ = librpc/gen_ndr/ndr_samr_c.o \
rpc_client/cli_samr.o
-LIBCLI_NETLOGON_OBJ = librpc/gen_ndr/cli_netlogon.o \
- librpc/gen_ndr/ndr_netlogon_c.o \
- rpc_client/cli_netlogon.o
+LIBCLI_NETLOGON_OBJ = librpc/gen_ndr/ndr_netlogon_c.o \
+ rpc_client/cli_netlogon.o \
+ rpc_client/util_netlogon.o
-LIBCLI_EPMAPPER_OBJ = librpc/gen_ndr/cli_epmapper.o \
- librpc/gen_ndr/ndr_epmapper_c.o
+LIBCLI_EPMAPPER_OBJ = librpc/gen_ndr/ndr_epmapper_c.o
LIBNDR_GEN_OBJ = librpc/gen_ndr/ndr_wkssvc.o \
$(LIBNDR_GEN_OBJ0) \
../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/smb_threads.o ../lib/util/util_id.o \
../lib/util/blocking.o ../lib/util/rfc1738.o \
../lib/util/select.o
lib/serverid.o \
lib/util_sconn.o \
lib/util_transfer_file.o ../lib/async_req/async_sock.o \
+ lib/addrchange.o \
$(TDB_LIB_OBJ) \
$(VERSION_OBJ) lib/charcnv.o lib/debug.o lib/fault.o \
lib/interface.o lib/pidfile.o \
KRBCLIENT_OBJ = libads/kerberos.o libads/ads_status.o
-LIBADDNS_OBJ0 = libaddns/dnsrecord.o libaddns/dnsutils.o libaddns/dnssock.o \
- libaddns/dnsgss.o libaddns/dnsmarshall.o
+LIBADDNS_OBJ0 = ../lib/addns/dnsrecord.o ../lib/addns/dnsutils.o ../lib/addns/dnssock.o \
+ ../lib/addns/dnsgss.o ../lib/addns/dnsmarshall.o ../lib/addns/error.o
LIBADDNS_OBJ = $(LIBADDNS_OBJ0) $(SOCKET_WRAPPER_OBJ)
GPEXT_OBJ = ../libgpo/gpext/gpext.o @GPEXT_STATIC@
librpc/gen_ndr/ndr_secrets.o
LIBNBT_OBJ = ../libcli/nbt/nbtname.o \
- ../libcli/netlogon.o \
- ../libcli/ndr_netlogon.o \
+ ../libcli/netlogon/netlogon.o \
+ ../libcli/netlogon/ndr_netlogon.o \
librpc/gen_ndr/ndr_nbt.o \
librpc/gen_ndr/ndr_svcctl.o \
../librpc/ndr/ndr_svcctl.o
libsmb/clistr.o libsmb/cliquota.o libsmb/clifsinfo.o libsmb/clidfs.o \
libsmb/clioplock.o libsmb/clirap2.o \
libsmb/smb_seal.o libsmb/async_smb.o \
+ libsmb/cli_np_tstream.o \
+ libsmb/smbsock_connect.o \
$(LIBSAMBA_OBJ) \
$(LIBNMB_OBJ) \
$(LIBNBT_OBJ) \
LIB_EVENTLOG_OBJ = lib/eventlog/eventlog.o
+DCE_RPC_EP_OBJ = librpc/rpc/dcerpc_ep.o
+
RPC_LSARPC_OBJ = rpc_server/srv_lsa_nt.o \
librpc/gen_ndr/srv_lsa.o
RPC_RPCECHO_OBJ = rpc_server/srv_echo_nt.o librpc/gen_ndr/srv_echo.o
-RPC_SERVER_OBJ = @RPC_STATIC@ $(RPC_PIPE_OBJ) $(NPA_TSTREAM_OBJ) \
- $(LIBCLI_SPOOLSS_OBJ) \
+RPC_EPMAPPER_OBJ = rpc_server/srv_epmapper.o librpc/gen_ndr/srv_epmapper.o
+
+RPC_SERVER_REGISTER_OBJ = rpc_server/srv_rpc_register.o $(DCE_RPC_EP_OBJ)
+
+RPC_SERVER_OBJ = $(RPC_LSARPC_OBJ) $(RPC_WINREG_OBJ) $(RPC_INITSHUTDOWN_OBJ) \
+ $(RPC_DSSETUP_OBJ) $(RPC_WKSSVC_OBJ) $(RPC_SVCCTL_OBJ) \
+ $(RPC_NTSVCS_OBJ) $(RPC_NETLOGON_OBJ) $(RPC_NETDFS_OBJ) \
+ $(RPC_SRVSVC_OBJ) $(RPC_SPOOLSS_OBJ) $(RPC_EVENTLOG_OBJ) \
+ $(RPC_SAMR_OBJ) $(RPC_RPCECHO_OBJ) $(RPC_EPMAPPER_OBJ) \
+ $(RPC_PIPE_OBJ) $(NPA_TSTREAM_OBJ) \
+ $(LIBCLI_SPOOLSS_OBJ) \
$(LIBCLI_WINREG_OBJ) \
$(LIBCLI_SRVSVC_OBJ) \
$(LIBCLI_LSA_OBJ) \
$(LIBCLI_SAMR_OBJ) \
$(LIBCLI_NETLOGON_OBJ) \
+ $(RPC_SERVER_REGISTER_OBJ) \
$(RPC_CLIENT_SCHANNEL_OBJ) \
rpc_client/init_netlogon.o \
rpc_client/init_samr.o
smbd/oplock_onefs.o
NOTIFY_OBJ = smbd/notify.o smbd/notify_inotify.o smbd/notify_internal.o \
- librpc/gen_ndr/ndr_notify.o
+ librpc/gen_ndr/ndr_notify.o librpc/gen_ndr/ndr_file_id.o
FNAME_UTIL_OBJ = smbd/filename_util.o
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
PLAINTEXT_AUTH_OBJ = auth/pampass.o auth/pass_check.o
librpc/gen_ndr/ndr_libnet_join.o
LIBNET_DSSYNC_OBJ = libnet/libnet_dssync.o \
+ libnet/libnet_dssync_passdb.o \
libnet/libnet_dssync_keytab.o \
../libcli/drsuapi/repl_decrypt.o
torture/denytest.o torture/mangle_test.o \
torture/nbench.o \
torture/test_async_echo.o \
+ torture/test_smbsock_any_connect.o \
+ torture/test_addrchange.o \
torture/test_posix_append.o
SMBTORTURE_OBJ = $(SMBTORTURE_OBJ1) $(PARAM_OBJ) $(TLDAP_OBJ) \
$(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(LIB_NONSMBD_OBJ) \
@LIBWBCLIENT_STATIC@ \
- ../nsswitch/libwbclient/wbc_async.o \
- ../nsswitch/libwbclient/wb_reqtrans.o \
+ torture/wbc_async.o \
+ lib/wb_reqtrans.o \
$(LIBMSRPC_OBJ) $(LIBMSRPC_GEN_OBJ) $(LIBCLI_ECHO_OBJ)
MASKTEST_OBJ = torture/masktest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
winbindd/winbindd_dual.o \
winbindd/winbindd_dual_ndr.o \
winbindd/winbindd_dual_srv.o \
- librpc/gen_ndr/cli_wbint.o \
librpc/gen_ndr/ndr_wbint_c.o \
librpc/gen_ndr/srv_wbint.o \
librpc/gen_ndr/ndr_wbint.o \
auth/server_info_sam.o \
auth/user_info.o \
auth/pampass.o \
- ../nsswitch/libwbclient/wb_reqtrans.o
+ lib/wb_reqtrans.o
WINBINDD_OBJ = \
$(WINBINDD_OBJ1) $(PASSDB_OBJ) $(GROUPDB_OBJ) \
LIBADDNS_STATIC_TARGET=@LIBADDNS_STATIC_TARGET@
LIBADDNS=@LIBADDNS_STATIC@ @LIBADDNS_SHARED@
#LIBADDNS_SYMS=$(srcdir)/exports/libaddns.@SYMSEXT@
-LIBADDNS_HEADERS=$(srcdir)/libaddns/addns.h
+LIBADDNS_HEADERS=$(srcdir)/../lib/addns/addns.h
$(LIBADDNS_SHARED_TARGET_SONAME): $(BINARY_PREREQS) $(LIBADDNS_OBJ) $(LIBTALLOC)
@echo Linking shared library $@
@echo "Building plugin $@"
@$(SHLD_MODULE) winbindd/idmap_passdb.o
+bin/autorid.@SHLIBEXT@: $(BINARY_PREREQS) winbindd/idmap_autorid.o
+ @echo "Building plugin $@"
+ @$(SHLD_MODULE) winbindd/idmap_autorid.o
+
bin/ad.@SHLIBEXT@: $(BINARY_PREREQS) winbindd/idmap_ad.o
@echo "Building plugin $@"
@$(SHLD_MODULE) winbindd/idmap_ad.o
bin/zfsacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_ZFSACL_OBJ)
@echo "Building plugin $@"
- @$(SHLD_MODULE) $(VFS_ZFSACL_OBJ)
+ @$(SHLD_MODULE) $(VFS_ZFSACL_OBJ) @ZFSACL_LIBS@
bin/irixacl.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_IRIXACL_OBJ)
@echo "Building plugin $@"
@echo "Building plugin $@"
@$(SHLD_MODULE) $(VFS_LINUX_XFS_SGID_OBJ)
+bin/time_audit.@SHLIBEXT@: $(BINARY_PREREQS) $(VFS_TIME_AUDIT_OBJ)
+ @echo "Building plugin $@"
+ @$(SHLD_MODULE) $(VFS_TIME_AUDIT_OBJ)
+
#########################################################
## IdMap NSS plugins
@$(SHELL) $(srcdir)/script/installdirs.sh $(INSTALLPERMS_BIN) \
$(DESTDIR) $(prefix) $(BINDIR) $(SBINDIR) $(LIBDIR) \
$(VARDIR) $(PRIVATEDIR) $(PIDDIR) $(LOCKDIR) $(STATEDIR) \
+ $(NMBDSOCKETDIR) \
$(CACHEDIR) $(MANDIR) $(CODEPAGEDIR) $(MODULESDIR) $(LOCALEDIR)
installservers:: all installdirs
installmodules:: modules installdirs
@$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(VFSLIBDIR) $(VFS_MODULES)
@$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(PDBLIBDIR) $(PDB_MODULES)
- @$(SHELL) $(srcdir)/script/installmodules.sh $(INSTALLPERMS_BIN) $(DESTDIR) $(prefix) $(RPCLIBDIR) $(RPC_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)
@echo " statedir: $(STATEDIR)"
@echo " cachedir: $(CACHEDIR)"
@echo " piddir: $(PIDDIR)"
+ @echo " nmbdsocketdir: $(NMBSOCKETDIR)"
@echo " swatdir: $(SWATDIR)"
@echo " datadir: ${DATADIR}"
@echo " codepagedir: $(CODEPAGEDIR)"
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) $(RPCLIBDIR) $(RPC_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)
proto::
etags::
+ rm -f TAGS
find $(srcdir)/.. -name "*.[ch]" | xargs -n 100 etags --append $(ETAGS_OPTIONS)
ctags::
NSS_WRAPPER_WINBIND_SO_PATH="$(srcdir)/../nsswitch/libnss_winbind.so" \
SELFTESTDIR="$(selftestdir)" SELFTESTPREFIX="$(selftest_prefix)" \
SOURCEDIR="$(srcdir)" \
+ VFSLIBDIR="$(builddir)/bin" \
RUN_FROM_BUILD_FARM="$(RUN_FROM_BUILD_FARM)" \
SUBUNIT_FORMATTER="$(SUBUNIT_FORMATTER)" \
PERL="$(PERL)" PYTHON="$(PYTHON)" \
clean_libnetapi_examples:
$(MAKE) -C lib/netapi/examples clean
-../source4/configure: ../buildtools/scripts/configure.waf
- cd ../source4 && ./autogen.sh
+WAF_BINARY=../buildtools/bin/waf
+WAF=$(WAF_BINARY)
+WAF_BUILD=WAF_MAKE=1 $(WAF_BINARY)
+SAMBA4_BINARIES=smbtorture,ndrdump
-samba4-configure: ../source4/configure
- @$(MAKE) -C ../source4 reconfigure || ( cd ../source4 && \
- ./configure.developer --nonshared-binary=smbtorture --enable-auto-reconfigure )
+samba4-configure:
+ @(cd ../source4 && \
+ CFLAGS='' $(WAF) reconfigure || \
+ CFLAGS='' $(WAF) configure --enable-developer --nonshared-binary=$(SAMBA4_BINARIES) --enable-auto-reconfigure )
.PHONY: samba4-configure
bin/smbtorture4: $(BINARY_PREREQS) samba4-configure
- cd ../source4 && make bin/smbtorture
+ cd ../source4 && $(WAF_BUILD) --targets=smbtorture
cp ../source4/bin/smbtorture bin/smbtorture4
bin/ndrdump4: $(BINARY_PREREQS) samba4-configure
- cd ../source4 && make bin/ndrdump
+ cd ../source4 && $(WAF_BUILD) --targets=ndrdump
cp ../source4/bin/ndrdump bin/ndrdump4
.PHONY: bin/smbtorture4