mirror of
https://github.com/samba-team/samba.git
synced 2024-12-25 23:21:54 +03:00
5437fdcffb
We validate everything except the whole LOGON_INFO structure, we even decrypt the PAC_CREDENTIALS_INFO blob and verify PAC_CREDENTIAL_DATA_NDR and PAC_CREDENTIAL_NTLM_SECPKG. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Günther Deschner <gd@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Thu Jul 21 01:07:28 CEST 2016 on sn-devel-144
322 lines
11 KiB
Python
Executable File
322 lines
11 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
|
|
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'
|
|
)
|
|
|
|
|
|
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
|
|
)
|
|
|
|
bld.RECURSE('smb2')
|
|
bld.RECURSE('winbind')
|
|
bld.RECURSE('libnetapi')
|
|
bld.RECURSE('libsmbclient')
|
|
|
|
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/nbt.c
|
|
ndr/ntlmssp.c
|
|
ndr/string.c
|
|
ndr/backupkey.c
|
|
ndr/witness.c
|
|
ndr/clusapi.c
|
|
ndr/negoex.c
|
|
ndr/krb5pac.c
|
|
''',
|
|
autoproto='ndr/proto.h',
|
|
deps='torture krb5samba'
|
|
)
|
|
|
|
torture_rpc_backupkey = ''
|
|
if bld.AD_DC_BUILD_IS_ENABLED():
|
|
if bld.CONFIG_SET('HAVE_GNUTLS_3_4_7'):
|
|
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/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
|
|
''' + 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
|
|
WB_HELPER
|
|
samba-net
|
|
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
|
|
''' + ntvfs_specific['deps'],
|
|
internal_module=True)
|
|
|
|
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
|
|
)
|
|
|
|
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
|
|
)
|
|
|
|
|
|
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='samba-net popt POPT_CREDENTIALS torture_rpc PROVISION',
|
|
internal_module=True
|
|
)
|
|
|
|
|
|
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
|
|
)
|
|
|
|
bld.SAMBA_MODULE('TORTURE_VFS',
|
|
source='vfs/vfs.c vfs/fruit.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,
|
|
)
|
|
|
|
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
|
|
)
|
|
|
|
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',
|
|
)
|
|
|