#!/usr/bin/env python
+provision = bld.pyembed_libname('PROVISION')
+samba_net = bld.pyembed_libname('samba-net')
bld.SAMBA_SUBSYSTEM('TORTURE_UTIL',
source='util_smb.c',
- public_deps='torture POPT_CREDENTIALS',
- deps='LIBCLI_RAW'
+ public_deps='torture popt POPT_CREDENTIALS',
+ deps='smbclient-raw'
)
bld.SAMBA_MODULE('TORTURE_BASIC',
source='basic/base.c basic/misc.c basic/scanner.c basic/utable.c basic/charset.c basic/mangle_test.c basic/denytest.c basic/aliases.c basic/locking.c basic/secleak.c basic/rename.c basic/dir.c basic/delete.c basic/unlink.c basic/disconnect.c basic/delaywrite.c basic/attr.c basic/properties.c',
subsystem='smbtorture',
- deps='LIBCLI_SMB POPT_CREDENTIALS TORTURE_UTIL LIBCLI_RAW TORTURE_RAW',
+ deps='LIBCLI_SMB popt POPT_CREDENTIALS TORTURE_UTIL smbclient-raw TORTURE_RAW',
internal_module=True,
autoproto='basic/proto.h',
- init_function='torture_base_init'
+ init_function='torture_base_init',
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
bld.SAMBA_MODULE('TORTURE_RAW',
- source='raw/qfsinfo.c raw/qfileinfo.c raw/setfileinfo.c raw/search.c raw/close.c raw/open.c raw/mkdir.c raw/oplock.c raw/notify.c raw/mux.c raw/ioctl.c raw/chkpath.c raw/unlink.c raw/read.c raw/context.c raw/write.c raw/lock.c raw/pingpong.c raw/lockbench.c raw/lookuprate.c raw/tconrate.c raw/openbench.c raw/rename.c raw/eas.c raw/streams.c raw/acls.c raw/seek.c raw/samba3hide.c raw/samba3misc.c raw/composite.c raw/raw.c raw/offline.c',
+ source='raw/qfsinfo.c raw/qfileinfo.c raw/setfileinfo.c raw/search.c raw/close.c raw/open.c raw/mkdir.c raw/oplock.c raw/notify.c raw/mux.c raw/ioctl.c raw/chkpath.c raw/unlink.c raw/read.c raw/context.c raw/session.c raw/write.c raw/lock.c raw/pingpong.c raw/lockbench.c raw/lookuprate.c raw/tconrate.c raw/openbench.c raw/rename.c raw/eas.c raw/streams.c raw/acls.c raw/seek.c raw/samba3hide.c raw/samba3misc.c raw/composite.c raw/raw.c raw/offline.c',
autoproto='raw/proto.h',
subsystem='smbtorture',
init_function='torture_raw_init',
- deps='LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE POPT_CREDENTIALS TORTURE_UTIL',
- internal_module=True
+ deps='LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE popt POPT_CREDENTIALS TORTURE_UTIL',
+ internal_module=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
bld.RECURSE('smb2')
bld.RECURSE('winbind')
bld.RECURSE('libnetapi')
bld.RECURSE('libsmbclient')
+bld.RECURSE('gpo')
+
+ntvfs_specific = dict(source='', deps='')
+
+# Yes, the spoolss_notify test uses the NTVFS file server to run the SMB server expected
+# to handle the RPC callback!
+if bld.CONFIG_SET('WITH_NTVFS_FILESERVER'):
+ ntvfs_specific['source'] += ' rpc/spoolss_notify.c'
+ ntvfs_specific['deps'] += ' SMB_SERVER dcerpc_server ntvfs'
bld.SAMBA_SUBSYSTEM('TORTURE_NDR',
- source='ndr/ndr.c ndr/winreg.c ndr/atsvc.c ndr/lsa.c ndr/epmap.c ndr/dfs.c ndr/netlogon.c ndr/drsuapi.c ndr/spoolss.c ndr/samr.c ndr/dfsblob.c ndr/drsblobs.c',
+ source='''ndr/ndr.c
+ ndr/winreg.c
+ ndr/atsvc.c
+ ndr/lsa.c
+ ndr/epmap.c
+ ndr/dfs.c
+ ndr/netlogon.c
+ ndr/drsuapi.c
+ ndr/spoolss.c
+ ndr/ntprinting.c
+ ndr/samr.c
+ ndr/dfsblob.c
+ ndr/drsblobs.c
+ ndr/nbt.c
+ ndr/ntlmssp.c
+ ndr/string.c
+ ndr/backupkey.c
+ ndr/witness.c
+ ndr/clusapi.c
+ ndr/negoex.c
+ ndr/krb5pac.c
+ ndr/winspool.c
+ ndr/cabinet.c
+ ndr/charset.c
+ ''',
autoproto='ndr/proto.h',
- deps='torture SERVICE_SMB'
+ deps='torture krb5samba',
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
-
+bld.SAMBA_SUBSYSTEM('IREMOTEWINSPOOL_COMMON',
+ source='rpc/iremotewinspool_common.c',
+ deps='talloc',
+ enabled=bld.PYTHON_BUILD_IS_ENABLED())
+
+torture_rpc_backupkey = ''
+if bld.AD_DC_BUILD_IS_ENABLED():
+ if (bld.CONFIG_SET('HAVE_GNUTLS_PRIVKEY_EXPORT_X509') and
+ bld.CONFIG_SET('HAVE_GNUTLS_X509_CRT_SET_SUBJECT_UNIQUE_ID')):
+ torture_rpc_backupkey = 'rpc/backupkey.c'
+ else:
+ torture_rpc_backupkey = 'rpc/backupkey_heimdal.c'
bld.SAMBA_MODULE('torture_rpc',
- source='rpc/join.c rpc/lsa.c rpc/lsa_lookup.c rpc/session_key.c rpc/echo.c rpc/dfs.c rpc/drsuapi.c rpc/drsuapi_cracknames.c rpc/dssync.c rpc/dsgetinfo.c rpc/spoolss.c rpc/spoolss_notify.c rpc/spoolss_win.c rpc/spoolss_access.c rpc/unixinfo.c rpc/samr.c rpc/samr_accessmask.c rpc/wkssvc.c rpc/srvsvc.c rpc/svcctl.c rpc/atsvc.c rpc/eventlog.c rpc/epmapper.c rpc/winreg.c rpc/initshutdown.c rpc/oxidresolve.c rpc/remact.c rpc/mgmt.c rpc/scanner.c rpc/autoidl.c rpc/countcalls.c rpc/testjoin.c rpc/schannel.c rpc/netlogon.c rpc/remote_pac.c rpc/samlogon.c rpc/samsync.c rpc/bind.c rpc/dssetup.c rpc/alter_context.c rpc/bench.c rpc/samba3rpc.c rpc/rpc.c rpc/async_bind.c rpc/handles.c rpc/frsapi.c rpc/object_uuid.c rpc/ntsvcs.c rpc/browser.c',
- autoproto='rpc/proto.h',
- subsystem='smbtorture',
- init_function='torture_rpc_init',
- deps='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_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 RPC_NDR_NTSVCS WB_HELPER LIBSAMBA-NET LIBCLI_AUTH POPT_CREDENTIALS TORTURE_LDAP TORTURE_UTIL TORTURE_RAP dcerpc_server service process_model ntvfs SERVICE_SMB RPC_NDR_BROWSER LIBCLI_DRSUAPI TORTURE_LDB_MODULE TORTURE_DFS',
- internal_module=True
- )
+ source='''
+ rpc/join.c
+ rpc/lsa.c
+ rpc/forest_trust.c
+ rpc/lsa_lookup.c
+ rpc/session_key.c
+ rpc/echo.c
+ rpc/dfs.c
+ rpc/drsuapi.c
+ rpc/drsuapi_w2k8.c
+ rpc/drsuapi_cracknames.c
+ rpc/dsgetinfo.c
+ rpc/spoolss.c
+ rpc/spoolss_win.c
+ rpc/spoolss_access.c
+ rpc/unixinfo.c
+ rpc/samr.c
+ rpc/samr_accessmask.c
+ rpc/samr_priv.c
+ rpc/wkssvc.c
+ rpc/srvsvc.c
+ rpc/svcctl.c
+ rpc/atsvc.c
+ rpc/eventlog.c
+ rpc/epmapper.c
+ rpc/winreg.c
+ rpc/initshutdown.c
+ rpc/oxidresolve.c
+ rpc/remact.c
+ rpc/mgmt.c
+ rpc/scanner.c
+ rpc/autoidl.c
+ rpc/countcalls.c
+ rpc/testjoin.c
+ rpc/schannel.c
+ rpc/netlogon.c
+ rpc/remote_pac.c
+ rpc/samlogon.c
+ rpc/samsync.c
+ rpc/dssetup.c
+ rpc/alter_context.c
+ rpc/bench.c
+ rpc/samba3rpc.c
+ rpc/rpc.c
+ rpc/async_bind.c
+ rpc/handles.c
+ rpc/frsapi.c
+ rpc/object_uuid.c
+ rpc/ntsvcs.c
+ rpc/browser.c
+ rpc/bind.c
+ rpc/fsrvp.c
+ rpc/clusapi.c
+ rpc/witness.c
+ rpc/iremotewinspool.c
+ rpc/iremotewinspool_driver.c
+ ''' + torture_rpc_backupkey + ntvfs_specific['source'],
+ autoproto='rpc/proto.h',
+ subsystem='smbtorture',
+ init_function='torture_rpc_init',
+ deps='''
+ 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_NETLOGON
+ RPC_NDR_ATSVC
+ 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
+ RPC_NDR_NTSVCS
+ %s
+ LIBCLI_AUTH
+ popt
+ POPT_CREDENTIALS
+ TORTURE_LDAP
+ TORTURE_UTIL
+ TORTURE_RAP
+ service
+ process_model
+ RPC_NDR_BROWSER
+ LIBCLI_DRSUAPI
+ TORTURE_DFS
+ RPC_NDR_FSRVP
+ RPC_NDR_CLUSAPI
+ RPC_NDR_WITNESS
+ RPC_NDR_BACKUPKEY
+ RPC_NDR_WINSPOOL
+ IREMOTEWINSPOOL_COMMON
+ printer_driver
+ ''' % samba_net + ntvfs_specific['deps'],
+ internal_module=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED())
bld.RECURSE('drs')
+bld.RECURSE('dns')
bld.SAMBA_MODULE('TORTURE_RAP',
source='rap/rap.c rap/rpc.c rap/printing.c rap/sam.c',
autoproto='rap/proto.h',
subsystem='smbtorture',
init_function='torture_rap_init',
- deps='TORTURE_UTIL LIBCLI_SMB NDR_RAP',
- internal_module=True
+ deps='TORTURE_UTIL LIBCLI_SMB NDR_RAP LIBCLI_RAP',
+ internal_module=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
bld.SAMBA_MODULE('TORTURE_DFS',
bld.SAMBA_MODULE('TORTURE_AUTH',
- source='auth/ntlmssp.c auth/pac.c',
+ source='auth/ntlmssp.c auth/pac.c auth/smbencrypt.c',
autoproto='auth/proto.h',
subsystem='smbtorture',
- deps='LIBCLI_SMB gensec auth KERBEROS POPT_CREDENTIALS SMBPASSWD torture',
+ deps='LIBCLI_SMB gensec auth4 authkrb5 popt POPT_CREDENTIALS smbpasswdparser torture com_err gensec_ntlmssp',
internal_module=True
)
bld.RECURSE('local')
+bld.RECURSE('krb5')
bld.SAMBA_MODULE('TORTURE_NBENCH',
source='nbench/nbio.c nbench/nbench.c',
bld.SAMBA_MODULE('TORTURE_LDAP',
- source='ldap/common.c ldap/basic.c ldap/schema.c ldap/uptodatevector.c ldap/cldap.c ldap/cldapbench.c ldap/ldap_sort.c ldap/nested_search.c',
+ source='ldap/common.c ldap/basic.c ldap/schema.c ldap/uptodatevector.c ldap/cldap.c ldap/netlogon.c ldap/cldapbench.c ldap/ldap_sort.c ldap/nested_search.c',
subsystem='smbtorture',
- deps='LIBCLI_LDAP LIBCLI_CLDAP SAMDB POPT_CREDENTIALS torture LDBSAMBA',
+ deps='cli-ldap cli_cldap samdb popt POPT_CREDENTIALS torture ldbsamba',
internal_module=True,
autoproto='ldap/proto.h',
init_function='torture_ldap_init'
autoproto='nbt/proto.h',
subsystem='smbtorture',
init_function='torture_nbt_init',
- deps='LIBCLI_SMB LIBCLI_NBT LIBCLI_DGRAM LIBCLI_WREPL torture_rpc',
- internal_module=True
+ deps='LIBCLI_SMB cli-nbt LIBCLI_DGRAM LIBCLI_WREPL torture_rpc',
+ internal_module=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
autoproto='libnet/proto.h',
subsystem='smbtorture',
init_function='torture_net_init',
- deps='LIBSAMBA-NET POPT_CREDENTIALS torture_rpc PROVISION',
- internal_module=True
+ deps='%s popt POPT_CREDENTIALS torture_rpc %s' % (provision, samba_net),
+ internal_module=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
autoproto='ntp/proto.h',
subsystem='smbtorture',
init_function='torture_ntp_init',
- deps='POPT_CREDENTIALS torture_rpc',
- internal_module=True
+ deps='popt POPT_CREDENTIALS torture_rpc',
+ internal_module=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
-TORTURE_MODULES = 'TORTURE_BASIC TORTURE_RAW torture_rpc TORTURE_RAP TORTURE_AUTH TORTURE_NBENCH TORTURE_UNIX TORTURE_LDAP TORTURE_NBT TORTURE_NET TORTURE_NTP torture_registry'
+bld.SAMBA_MODULE('TORTURE_VFS',
+ source='vfs/vfs.c vfs/fruit.c vfs/acl_xattr.c',
+ subsystem='smbtorture',
+ deps='LIBCLI_SMB POPT_CREDENTIALS TORTURE_UTIL smbclient-raw TORTURE_RAW',
+ internal_module=True,
+ autoproto='vfs/proto.h',
+ init_function='torture_vfs_init'
+ )
+
+TORTURE_MODULES = 'TORTURE_BASIC TORTURE_RAW torture_rpc TORTURE_RAP TORTURE_AUTH TORTURE_NBENCH TORTURE_UNIX TORTURE_LDAP TORTURE_NBT TORTURE_NET TORTURE_NTP torture_registry TORTURE_VFS'
bld.SAMBA_SUBSYSTEM('torturemain',
source='smbtorture.c torture.c shell.c',
subsystem_name='smbtorture',
deps='torture popt POPT_SAMBA POPT_CREDENTIALS dcerpc LIBCLI_SMB SMBREADLINE ' + TORTURE_MODULES,
- needs_python=True
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
bld.SAMBA_BINARY('smbtorture',
source=[],
manpages='man/smbtorture.1',
- public_headers='smbtorture.h',
- deps='torturemain torture popt POPT_SAMBA POPT_CREDENTIALS dcerpc LIBCLI_SMB SMBREADLINE ' + TORTURE_MODULES,
- needs_python=True
- )
-
-# this is used in the build farm to build a smbtorture.static binary for s3
-bld.SAMBA_BINARY('smbtorture.static',
- source=[],
+ private_headers='smbtorture.h',
deps='torturemain torture popt POPT_SAMBA POPT_CREDENTIALS dcerpc LIBCLI_SMB SMBREADLINE ' + TORTURE_MODULES,
- enabled = bld.env.BUILD_FARM,
- needs_python=True
+ pyembed=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
)
-bld.env.NONSHARED_BINARIES.append('smbtorture.static')
-
-
bld.SAMBA_BINARY('gentest',
source='gentest.c',
manpages='man/gentest.1',
- deps='LIBSAMBA-HOSTCONFIG LIBSAMBA-UTIL popt POPT_SAMBA POPT_CREDENTIALS LIBCLI_SMB LIBCLI_RAW'
+ deps='samba-hostconfig samba-util popt POPT_SAMBA POPT_CREDENTIALS LIBCLI_SMB smbclient-raw param_options'
)
bld.SAMBA_BINARY('masktest',
source='masktest.c',
manpages='man/masktest.1',
- deps='LIBSAMBA-HOSTCONFIG LIBSAMBA-UTIL popt POPT_SAMBA POPT_CREDENTIALS LIBCLI_SMB'
+ deps='samba-hostconfig samba-util popt POPT_SAMBA POPT_CREDENTIALS LIBCLI_SMB param_options'
)
#cflags='--coverage',
# GCOV='1',
manpages='man/locktest.1',
- deps='popt POPT_SAMBA POPT_CREDENTIALS LIBSAMBA-UTIL LIBCLI_SMB LIBSAMBA-HOSTCONFIG',
+ deps='popt POPT_SAMBA POPT_CREDENTIALS samba-util LIBCLI_SMB samba-hostconfig param_options',
)
+bld.SAMBA_MODULE('TORTURE_DSDB',
+ source="../../source4/dsdb/common/tests/dsdb.c",
+ autoproto='dsdb_proto.h',
+ subsystem='smbtorture',
+ init_function='torture_dsdb_init',
+ deps="TORTURE_UTIL samba-util",
+ internal_module=True,
+ enabled=bld.PYTHON_BUILD_IS_ENABLED()
+ )