#!/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 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 POPT_CREDENTIALS TORTURE_UTIL smbclient-raw TORTURE_RAW', internal_module=True, autoproto='basic/proto.h', 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/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 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/ntprinting.c ndr/samr.c ndr/dfsblob.c ndr/drsblobs.c ndr/dnsp.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 ndr/svcctl.c ''', autoproto='ndr/proto.h', 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()) bld.SAMBA_MODULE('torture_rpc', 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/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 rpc/mdssvc.c rpc/backupkey.c''' + 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_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 RPC_NDR_MDSSVC mdssvc ''' % 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 LIBCLI_RAP', internal_module=True, enabled=bld.PYTHON_BUILD_IS_ENABLED() ) bld.SAMBA_MODULE('TORTURE_DFS', source='dfs/domaindfs.c dfs/common.c', autoproto='dfs/proto.h', subsystem='smbtorture', init_function='torture_dfs_init', deps='TORTURE_UTIL LIBCLI_SMB', internal_module=True ) bld.SAMBA_MODULE('TORTURE_AUTH', source='auth/ntlmssp.c auth/pac.c auth/smbencrypt.c', autoproto='auth/proto.h', subsystem='smbtorture', 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', autoproto='nbench/proto.h', subsystem='smbtorture', init_function='torture_nbench_init', deps='TORTURE_UTIL', internal_module=True ) bld.SAMBA_MODULE('TORTURE_UNIX', source='unix/unix.c unix/whoami.c unix/unix_info2.c', autoproto='unix/proto.h', subsystem='smbtorture', init_function='torture_unix_init', deps='TORTURE_UTIL', internal_module=True ) bld.SAMBA_MODULE('TORTURE_LDAP', 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='cli-ldap cli_cldap samdb popt POPT_CREDENTIALS torture ldbsamba', internal_module=True, autoproto='ldap/proto.h', init_function='torture_ldap_init' ) bld.SAMBA_MODULE('TORTURE_NBT', source='nbt/query.c nbt/register.c nbt/wins.c nbt/winsbench.c nbt/winsreplication.c nbt/dgram.c nbt/nbt.c', autoproto='nbt/proto.h', subsystem='smbtorture', init_function='torture_nbt_init', deps='LIBCLI_SMB cli-nbt LIBCLI_DGRAM LIBCLI_WREPL torture_rpc', internal_module=True, enabled=bld.PYTHON_BUILD_IS_ENABLED() ) bld.SAMBA_MODULE('TORTURE_NET', source='libnet/libnet.c libnet/utils.c libnet/userinfo.c libnet/userman.c libnet/groupinfo.c libnet/groupman.c libnet/domain.c libnet/libnet_lookup.c libnet/libnet_user.c libnet/libnet_group.c libnet/libnet_share.c libnet/libnet_rpc.c libnet/libnet_domain.c libnet/libnet_BecomeDC.c', autoproto='libnet/proto.h', subsystem='smbtorture', init_function='torture_net_init', deps='%s popt POPT_CREDENTIALS torture_rpc %s' % (provision, samba_net), internal_module=True, enabled=bld.PYTHON_BUILD_IS_ENABLED() ) bld.SAMBA_MODULE('TORTURE_NTP', source='ntp/ntp_signd.c', autoproto='ntp/proto.h', subsystem='smbtorture', init_function='torture_ntp_init', deps='popt POPT_CREDENTIALS torture_rpc', internal_module=True, enabled=bld.PYTHON_BUILD_IS_ENABLED() ) 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, enabled=bld.PYTHON_BUILD_IS_ENABLED() ) bld.SAMBA_BINARY('smbtorture', source=[], manpages='man/smbtorture.1', private_headers='smbtorture.h', deps='torturemain torture popt POPT_SAMBA POPT_CREDENTIALS dcerpc LIBCLI_SMB SMBREADLINE ' + TORTURE_MODULES, pyembed=True, enabled=bld.PYTHON_BUILD_IS_ENABLED() ) bld.SAMBA_BINARY('gentest', source='gentest.c', manpages='man/gentest.1', 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='samba-hostconfig samba-util popt POPT_SAMBA POPT_CREDENTIALS LIBCLI_SMB param_options' ) bld.SAMBA_BINARY('locktest', source='locktest.c', # COV_TARGET='test', #ldflags='--coverage', #cflags='--coverage', # GCOV='1', manpages='man/locktest.1', 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() )