# TORTURE subsystem
[LIBRARY::torture]
-DESCRIPTION = Samba torture (test) suite
SO_VERSION = 0
VERSION = 0.0.1
-PUBLIC_HEADERS = torture.h
+PC_FILE = torture.pc
+PUBLIC_HEADERS = torture.h ui.h
PUBLIC_PROTO_HEADER = proto.h
OBJ_FILES = \
- torture.o
+ torture.o \
+ ui.o
PUBLIC_DEPENDENCIES = \
LIBSAMBA-CONFIG \
- LIBSAMBA-UTIL
+ LIBSAMBA-UTIL \
+ LIBTALLOC
[SUBSYSTEM::TORTURE_UTIL]
OBJ_FILES = util.o util_smb.o
+PRIVATE_DEPENDENCIES = LIBCLI_RAW
PUBLIC_PROTO_HEADER = util.h
PUBLIC_DEPENDENCIES = POPT_CREDENTIALS
-[SUBSYSTEM::TORTURE_UI]
-OBJ_FILES = ui.o
-PUBLIC_HEADERS = ui.h
-PUBLIC_DEPENDENCIES = LIBTALLOC
-
#################################
# Start SUBSYSTEM TORTURE_BASIC
[MODULE::TORTURE_BASIC]
basic/proto.h
OBJ_FILES = \
basic/base.o \
+ basic/misc.o \
basic/scanner.o \
basic/utable.o \
basic/charset.o \
basic/delaywrite.o \
basic/attr.o \
basic/properties.o
-PUBLIC_DEPENDENCIES = \
+PRIVATE_DEPENDENCIES = \
LIBCLI_SMB POPT_CREDENTIALS \
- TORTURE_UTIL
+ TORTURE_UTIL LIBCLI_RAW \
+ TORTURE_RAW
# End SUBSYSTEM TORTURE_BASIC
#################################
raw/context.o \
raw/write.o \
raw/lock.o \
+ raw/pingpong.o \
+ raw/lockbench.o \
+ raw/openbench.o \
raw/rename.o \
raw/eas.o \
raw/streams.o \
raw/samba3hide.o \
raw/samba3misc.o \
raw/composite.o \
- raw/raw.o
-PUBLIC_DEPENDENCIES = \
+ raw/raw.o \
+ raw/offline.o
+PRIVATE_DEPENDENCIES = \
LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE \
- POPT_CREDENTIALS
+ POPT_CREDENTIALS TORTURE_UTIL
# End SUBSYSTEM TORTURE_RAW
#################################
include smb2/config.mk
+include winbind/config.mk
-[MODULE::torture_misc]
-SUBSYSTEM = torture
-INIT_FUNCTION = torture_misc_init
-OBJ_FILES = misc.o
+[SUBSYSTEM::TORTURE_NDR]
+PRIVATE_PROTO_HEADER = ndr/proto.h
+OBJ_FILES = ndr/ndr.o \
+ ndr/winreg.o \
+ ndr/atsvc.o \
+ ndr/lsa.o \
+ ndr/epmap.o \
+ ndr/dfs.o \
+ ndr/netlogon.o \
+ ndr/drsuapi.o \
+ ndr/spoolss.o \
+ ndr/samr.o
[MODULE::torture_rpc]
# TORTURE_NET and TORTURE_NBT use functions from torture_rpc...
rpc/lsa_lookup.o \
rpc/session_key.o \
rpc/echo.o \
- rpc/dcom.o \
rpc/dfs.o \
rpc/drsuapi.o \
rpc/drsuapi_cracknames.o \
rpc/dssync.o \
rpc/spoolss.o \
+ rpc/spoolss_notify.o \
+ rpc/spoolss_win.o \
rpc/unixinfo.o \
rpc/samr.o \
+ rpc/samr_accessmask.o \
rpc/wkssvc.o \
rpc/srvsvc.o \
rpc/svcctl.o \
rpc/netlogon.o \
rpc/samlogon.o \
rpc/samsync.o \
- rpc/rot.o \
rpc/bind.o \
rpc/dssetup.o \
rpc/alter_context.o \
rpc/bench.o \
rpc/samba3rpc.o \
rpc/rpc.o \
- rpc/async_bind.o
-PUBLIC_DEPENDENCIES = \
- NDR_TABLE RPC_NDR_UNIXINFO RPC_NDR_SAMR RPC_NDR_WINREG RPC_NDR_INITSHUTDOWN \
+ rpc/async_bind.o \
+ rpc/handles.o \
+ rpc/frsapi.o
+PRIVATE_DEPENDENCIES = \
+ NDR_TABLE RPC_NDR_UNIXINFO dcerpc_samr RPC_NDR_WINREG RPC_NDR_INITSHUTDOWN \
RPC_NDR_OXIDRESOLVER RPC_NDR_EVENTLOG RPC_NDR_ECHO RPC_NDR_SVCCTL \
- RPC_NDR_MGMT RPC_NDR_NETLOGON RPC_NDR_ATSVC RPC_NDR_DRSUAPI \
- RPC_NDR_LSA RPC_NDR_EPMAPPER RPC_NDR_DFS RPC_NDR_SPOOLSS \
+ RPC_NDR_NETLOGON dcerpc_atsvc dcerpc_mgmt RPC_NDR_DRSUAPI \
+ RPC_NDR_LSA RPC_NDR_EPMAPPER RPC_NDR_DFS RPC_NDR_FRSAPI RPC_NDR_SPOOLSS \
RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_ROT RPC_NDR_DSSETUP \
RPC_NDR_REMACT RPC_NDR_OXIDRESOLVER WB_HELPER LIBSAMBA-NET \
- LIBCLI_AUTH POPT_CREDENTIALS
+ LIBCLI_AUTH POPT_CREDENTIALS TORTURE_LDAP TORTURE_UTIL TORTURE_RAP \
+ dcerpc_server service process_model
#################################
# Start SUBSYSTEM TORTURE_RAP
rap/proto.h
OBJ_FILES = \
rap/rap.o
-PUBLIC_DEPENDENCIES = \
- LIBCLI_SMB
+PRIVATE_DEPENDENCIES = TORTURE_UTIL LIBCLI_SMB
# End SUBSYSTEM TORTURE_RAP
#################################
OBJ_FILES = \
auth/ntlmssp.o \
auth/pac.o
-PUBLIC_DEPENDENCIES = \
+PRIVATE_DEPENDENCIES = \
LIBCLI_SMB gensec auth LIBSAMBA3 KERBEROS \
POPT_CREDENTIALS
# End SUBSYSTEM TORTURE_AUTH
[MODULE::TORTURE_NBENCH]
SUBSYSTEM = torture
INIT_FUNCTION = torture_nbench_init
+PRIVATE_DEPENDENCIES = TORTURE_UTIL
PRIVATE_PROTO_HEADER = \
nbench/proto.h
OBJ_FILES = \
# End MODULE TORTURE_NBENCH
#################################
+#################################
+# Start MODULE TORTURE_UNIX
+[MODULE::TORTURE_UNIX]
+SUBSYSTEM = torture
+INIT_FUNCTION = torture_unix_init
+PRIVATE_DEPENDENCIES = TORTURE_UTIL
+PRIVATE_PROTO_HEADER = \
+ unix/proto.h
+OBJ_FILES = \
+ unix/unix.o \
+ unix/whoami.o \
+ unix/unix_info2.o
+# End MODULE TORTURE_UNIX
+#################################
+
#################################
# Start SUBSYSTEM TORTURE_LDAP
[MODULE::TORTURE_LDAP]
ldap/common.o \
ldap/basic.o \
ldap/schema.o \
+ ldap/uptodatevector.o \
ldap/cldap.o \
ldap/cldapbench.o
-PUBLIC_DEPENDENCIES = \
+PRIVATE_DEPENDENCIES = \
LIBCLI_LDAP LIBCLI_CLDAP SAMDB POPT_CREDENTIALS
# End SUBSYSTEM TORTURE_LDAP
#################################
nbt/winsbench.o \
nbt/winsreplication.o \
nbt/dgram.o \
- nbt/browse.o \
nbt/nbt.o
-PUBLIC_DEPENDENCIES = \
- LIBCLI_SMB LIBCLI_NBT LIBCLI_DGRAM LIBCLI_WREPL
+PRIVATE_DEPENDENCIES = \
+ LIBCLI_SMB LIBCLI_NBT LIBCLI_DGRAM LIBCLI_WREPL torture_rpc
# End SUBSYSTEM TORTURE_NBT
#################################
libnet/proto.h
OBJ_FILES = \
libnet/libnet.o \
+ libnet/utils.o \
libnet/userinfo.o \
libnet/userman.o \
+ libnet/groupinfo.o \
+ libnet/groupman.o \
libnet/domain.o \
libnet/libnet_lookup.o \
libnet/libnet_user.o \
+ libnet/libnet_group.o \
libnet/libnet_share.o \
- libnet/libnet_rpc.o
-PUBLIC_DEPENDENCIES = \
+ libnet/libnet_rpc.o \
+ libnet/libnet_domain.o \
+ libnet/libnet_BecomeDC.o
+PRIVATE_DEPENDENCIES = \
LIBSAMBA-NET \
- POPT_CREDENTIALS
+ smbcalls \
+ POPT_CREDENTIALS \
+ torture_rpc
# End SUBSYSTEM TORTURE_NET
#################################
LIBPOPT \
POPT_SAMBA \
POPT_CREDENTIALS \
- TORTURE_UI \
dcerpc \
- LIBCLI_SMB
+ LIBCLI_SMB \
+ SMBREADLINE
MANPAGE = man/smbtorture.1
# End BINARY smbtorture
#################################
OBJ_FILES = \
locktest.o
PRIVATE_DEPENDENCIES = \
+ LIBSAMBA-UTIL \
LIBCLI_SMB \
- LIBSAMBA-CONFIG \
- LIBSAMBA-UTIL
+ LIBSAMBA-CONFIG
MANPAGE = man/locktest.1
# End BINARY locktest
#################################
-GCOV_FLAGS = -ftest-coverage -fprofile-arcs
-GCOV_LIBS = -lgcov
+GCOV_CFLAGS = -ftest-coverage -fprofile-arcs
+GCOV_LDFLAGS = $(GCOV_CFLAGS) -lgcov
+
+COV_TARGET = test
+
+COV_VARS = \
+ CFLAGS="$(CFLAGS) $(GCOV_CFLAGS)" \
+ BNLD_FLAGS="$(BNLD_FLAGS) $(GCOV_LDFLAGS)" \
+ SHLD_FLAGS="$(SHLD_FLAGS) $(GCOV_LDFLAGS)" \
+ MDLD_FLAGS="$(MDLD_FLAGS) $(GCOV_LDFLAGS)" \
+ HOSTCC_FLAGS="$(HOSTCC_FLAGS) $(GCOV_CFLAGS)" \
+ HOSTLD_FLAGS="$(HOSTLD_FLAGS) $(GCOV_LDFLAGS)"
-gcov:
- @$(MAKE) test \
- CFLAGS="$(CFLAGS) $(GCOV_FLAGS)" \
- LD_FLAGS="$(LD_FLAGS) $(GCOV_FLAGS)" \
- LIBS="$(LIBS) $(GCOV_LIBS)"
+test_cov:
+ @$(MAKE) $(COV_TARGET) $(COV_VARS)
+
+gcov: test_cov
for I in $(sort $(dir $(ALL_OBJS))); \
do $(GCOV) -p -o $$I $$I/*.c; \
done
+
+lcov-split:
+ rm -f samba.info
+ @$(MAKE) $(COV_TARGET) $(COV_VARS) \
+ TEST_OPTIONS="--analyse-cmd=\"lcov --base-directory `pwd` --directory . --capture --output-file samba.info -t\""
+ -rm heimdal/lib/*/{lex,parse}.{gcda,gcno}
+ genhtml -o coverage samba.info
+
+lcov: test_cov
+ -rm heimdal/lib/*/{lex,parse}.{gcda,gcno}
+ lcov --base-directory `pwd` --directory . --capture --output-file samba.info
+ genhtml -o coverage samba.info
+
+testcov-html:: lcov