1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00
samba-mirror/librpc/wscript_build
Douglas Bagnall 601e8a3f69 CVE-2020-10745: ndr_dns: move ndr_push_dns_string core into sharable function
This is because ndr_nbt.c does almost exactly the same thing with
almost exactly the same code, and they both do it wrong. Soon they
will both be using the better version that this will become. Though in
this patch we just move the code, not fix it.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=14378

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2020-07-02 09:01:41 +00:00

724 lines
18 KiB
Python

#!/usr/bin/env python
bld.RECURSE('idl')
bld.RECURSE('../lib/compression')
bld.SAMBA_SUBSYSTEM('NDR_AUDIOSRV',
source='gen_ndr/ndr_audiosrv.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_AUTH',
source='gen_ndr/ndr_auth.c ndr/ndr_auth.c',
public_headers='gen_ndr/auth.h',
header_path='gen_ndr',
public_deps='ndr NDR_SECURITY ndr-krb5pac'
)
bld.SAMBA_SUBSYSTEM('NDR_ATSVC',
source='gen_ndr/ndr_atsvc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_NAMED_PIPE_AUTH',
source='gen_ndr/ndr_named_pipe_auth.c',
public_deps='ndr NDR_AUTH'
)
bld.SAMBA_SUBSYSTEM('NDR_DNSSERVER',
source='gen_ndr/ndr_dnsserver.c ndr/ndr_dnsserver.c',
public_deps='ndr NDR_DNSP'
)
bld.SAMBA_SUBSYSTEM('NDR_DNS',
source='gen_ndr/ndr_dns.c ndr/ndr_dns.c ndr/ndr_dns_utils.c',
public_deps='ndr NDR_DNSP'
)
bld.SAMBA_SUBSYSTEM('NDR_DSBACKUP',
source='gen_ndr/ndr_dsbackup.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_DFS',
source='gen_ndr/ndr_dfs.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_WINREG',
source='gen_ndr/ndr_winreg.c',
public_deps='ndr NDR_SECURITY NDR_LSA'
)
bld.SAMBA_SUBSYSTEM('NDR_EFS',
source='gen_ndr/ndr_efs.c',
public_deps='ndr NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_ROT',
source='gen_ndr/ndr_rot.c',
public_deps='ndr NDR_ORPC'
)
bld.SAMBA_SUBSYSTEM('NDR_FRSRPC',
source='ndr/ndr_frsrpc.c gen_ndr/ndr_frsrpc.c',
public_deps='ndr NDR_FSCC'
)
bld.SAMBA_SUBSYSTEM('NDR_FRSAPI',
source='gen_ndr/ndr_frsapi.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_FRSTRANS',
source='gen_ndr/ndr_frstrans.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_DFSBLOBS',
source='gen_ndr/ndr_dfsblobs.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_BKUPBLOBS',
source='ndr/ndr_bkupblobs.c gen_ndr/ndr_bkupblobs.c',
public_deps='ndr NDR_SECURITY NDR_FSCC'
)
bld.SAMBA_SUBSYSTEM('NDR_FSCC',
source='gen_ndr/ndr_fscc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_POLICYAGENT',
source='gen_ndr/ndr_policyagent.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_UNIXINFO',
source='gen_ndr/ndr_unixinfo.c',
public_deps='ndr NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_SPOOLSS',
source='gen_ndr/ndr_spoolss.c',
public_deps='ndr NDR_SPOOLSS_BUF NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_SPOOLSS_BUF',
source='ndr/ndr_spoolss_buf.c',
deps='talloc'
)
bld.SAMBA_SUBSYSTEM('NDR_WINSPOOL',
source='gen_ndr/ndr_winspool.c',
public_deps='ndr NDR_SPOOLSS'
)
bld.SAMBA_SUBSYSTEM('NDR_PRINTCAP',
source='gen_ndr/ndr_printcap.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_EPMAPPER',
source='gen_ndr/ndr_epmapper.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_DBGIDL',
source='gen_ndr/ndr_dbgidl.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_DSSETUP',
source='gen_ndr/ndr_dssetup.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_MSGSVC',
source='gen_ndr/ndr_msgsvc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_MGMT',
source='gen_ndr/ndr_mgmt.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_ORPC',
source='ndr/ndr_orpc.c gen_ndr/ndr_orpc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_OXIDRESOLVER',
source='gen_ndr/ndr_oxidresolver.c',
public_deps='ndr NDR_ORPC'
)
bld.SAMBA_SUBSYSTEM('NDR_REMACT',
source='gen_ndr/ndr_remact.c',
public_deps='ndr NDR_ORPC'
)
bld.SAMBA_SUBSYSTEM('NDR_DCOM',
source='gen_ndr/ndr_dcom.c',
public_deps='ndr NDR_SECURITY NDR_ORPC'
)
bld.SAMBA_SUBSYSTEM('NDR_WMI',
source='ndr/ndr_wmi.c gen_ndr/ndr_wmi.c',
public_deps='ndr NDR_SECURITY NDR_DCOM'
)
bld.SAMBA_SUBSYSTEM('NDR_WZCSVC',
source='gen_ndr/ndr_wzcsvc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_BROWSER',
source='gen_ndr/ndr_browser.c',
public_deps='ndr NDR_SRVSVC'
)
bld.SAMBA_SUBSYSTEM('NDR_W32TIME',
source='gen_ndr/ndr_w32time.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_SCERPC',
source='gen_ndr/ndr_scerpc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_SERVER_ID',
source='gen_ndr/ndr_server_id.c',
deps='ndr',
public_headers='gen_ndr/server_id.h',
header_path='gen_ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_TRKWKS',
source='gen_ndr/ndr_trkwks.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_KEYSVC',
source='gen_ndr/ndr_keysvc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_RAP',
source='gen_ndr/ndr_rap.c ndr/ndr_rap.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_IDMAP',
source='gen_ndr/ndr_idmap.c',
public_deps='ndr ndr-standard'
)
bld.SAMBA_SUBSYSTEM('NDR_NOTIFY',
source='gen_ndr/ndr_notify.c',
public_deps='ndr ndr-standard NDR_SERVER_ID NDR_FILE_ID'
)
bld.SAMBA_SUBSYSTEM('NDR_NTLMSSP',
source='ndr/ndr_ntlmssp.c gen_ndr/ndr_ntlmssp.c',
public_deps='ndr ndr-standard'
)
bld.SAMBA_SUBSYSTEM('NDR_NEGOEX',
source='ndr/ndr_negoex.c gen_ndr/ndr_negoex.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_DNSP',
source='gen_ndr/ndr_dnsp.c ndr/ndr_dnsp.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_NFS4ACL',
source='gen_ndr/ndr_nfs4acl.c',
public_deps='ndr NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_NTPRINTING',
source='gen_ndr/ndr_ntprinting.c ndr/ndr_ntprinting.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_SAMR',
source='gen_ndr/ndr_samr.c',
public_deps='ndr NDR_SECURITY NDR_LSA'
)
bld.SAMBA_SUBSYSTEM('NDR_LSA',
source='gen_ndr/ndr_lsa.c',
public_deps='ndr NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_SECURITY',
source='gen_ndr/ndr_security.c ndr/ndr_sec_helper.c',
deps='ndr samba-security',
public_headers='gen_ndr/security.h',
header_path='gen_ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_SMB_ACL',
source='gen_ndr/ndr_smb_acl.c',
deps='ndr',
)
bld.SAMBA_SUBSYSTEM('NDR_SVCCTL',
source='gen_ndr/ndr_svcctl.c ndr/ndr_svcctl.c',
public_deps='ndr NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_SRVSVC',
source='gen_ndr/ndr_srvsvc.c',
public_deps='ndr NDR_SECURITY NDR_SVCCTL'
)
bld.SAMBA_SUBSYSTEM('NDR_NETLOGON',
source='gen_ndr/ndr_netlogon.c ndr/ndr_netlogon.c',
public_deps='ndr NDR_SECURITY NDR_LSA NDR_SAMR ndr_nbt'
)
bld.SAMBA_SUBSYSTEM('NDR_EVENTLOG',
source='gen_ndr/ndr_eventlog.c',
public_deps='ndr NDR_SECURITY NDR_LSA'
)
bld.SAMBA_SUBSYSTEM('NDR_EVENTLOG6',
source='gen_ndr/ndr_eventlog6.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_NTSVCS',
source='gen_ndr/ndr_ntsvcs.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_WKSSVC',
source='gen_ndr/ndr_wkssvc.c',
public_deps='ndr NDR_SECURITY NDR_SRVSVC NDR_LSA'
)
bld.SAMBA_SUBSYSTEM('NDR_ECHO',
source='gen_ndr/ndr_echo.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_INITSHUTDOWN',
source='gen_ndr/ndr_initshutdown.c',
public_deps='ndr NDR_LSA'
)
bld.SAMBA_SUBSYSTEM('NDR_COMPRESSION',
source='ndr/ndr_compression.c',
public_deps='samba-errors ndr',
deps='z LZXPRESS'
)
bld.SAMBA_SUBSYSTEM('NDR_FSRVP',
source='gen_ndr/ndr_fsrvp.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_WITNESS',
source='gen_ndr/ndr_witness.c ndr/ndr_witness.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_CLUSAPI',
source='gen_ndr/ndr_clusapi.c',
public_deps='ndr NDR_WINREG'
)
bld.SAMBA_SUBSYSTEM('NDR_MDSSVC',
source='gen_ndr/ndr_mdssvc.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_DCERPC',
source='gen_ndr/ndr_dcerpc.c ndr/ndr_dcerpc.c',
public_deps='ndr',
public_headers='gen_ndr/ndr_dcerpc.h gen_ndr/dcerpc.h ndr/ndr_dcerpc.h',
header_path=[ ('gen_ndr*', 'gen_ndr'), ('ndr*', 'ndr')]
)
bld.SAMBA_SUBSYSTEM('NDR_DRSUAPI',
source='ndr/ndr_drsuapi.c gen_ndr/ndr_drsuapi.c',
public_deps='ndr NDR_COMPRESSION NDR_SECURITY ndr-standard asn1util',
public_headers='gen_ndr/ndr_drsuapi.h gen_ndr/drsuapi.h ndr/ndr_drsuapi.h',
header_path=[ ('gen_ndr*', 'gen_ndr'), ('ndr*', 'ndr')]
)
bld.SAMBA_SUBSYSTEM('NDR_DRSBLOBS',
source='ndr/ndr_drsblobs.c gen_ndr/ndr_drsblobs.c',
public_deps='ndr NDR_DRSUAPI',
public_headers='gen_ndr/ndr_drsblobs.h gen_ndr/drsblobs.h ndr/ndr_drsblobs.h',
header_path=[ ('gen_ndr*', 'gen_ndr'), ('ndr*', 'ndr')]
)
bld.SAMBA_SUBSYSTEM('NDR_KRB5PAC',
source='',
deps='ndr-krb5pac')
bld.SAMBA_LIBRARY('ndr-krb5pac',
source='ndr/ndr_krb5pac.c gen_ndr/ndr_krb5pac.c',
public_deps='ndr ndr-standard NDR_SECURITY',
public_headers='gen_ndr/krb5pac.h gen_ndr/ndr_krb5pac.h ndr/ndr_krb5pac.h',
header_path=[ ('gen_ndr*', 'gen_ndr'), ('ndr*', 'ndr')],
pc_files='ndr_krb5pac.pc',
vnum='0.0.1'
)
bld.SAMBA_LIBRARY('ndr-standard',
source='',
vnum='0.0.1',
pc_files='ndr_standard.pc',
deps='''NDR_SECURITY NDR_LSA NDR_SAMR NDR_NETLOGON
NDR_EVENTLOG NDR_EVENTLOG6 NDR_DFS
NDR_NTSVCS NDR_SVCCTL NDR_INITSHUTDOWN NDR_WKSSVC NDR_SRVSVC NDR_WINREG
NDR_ECHO security NDR_DNS NDR_DNSP NDR_ATSVC NDR_SPOOLSS NDR_DSSETUP
NDR_SERVER_ID NDR_NOTIFY''',
public_deps='ndr',
public_headers='gen_ndr/samr.h gen_ndr/ndr_samr.h gen_ndr/lsa.h gen_ndr/netlogon.h gen_ndr/atsvc.h gen_ndr/ndr_atsvc.h gen_ndr/ndr_svcctl.h gen_ndr/svcctl.h',
header_path='gen_ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_XATTR',
source='ndr/ndr_xattr.c gen_ndr/ndr_xattr.c',
public_deps='ndr NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_SMB2_LEASE_STRUCT',
source='gen_ndr/ndr_smb2_lease_struct.c',
public_deps='ndr',
public_headers='gen_ndr/smb2_lease_struct.h'
)
bld.SAMBA_SUBSYSTEM('NDR_QUOTA',
source='gen_ndr/ndr_quota.c',
public_deps='ndr',
)
bld.SAMBA_SUBSYSTEM('NDR_SCHANNEL',
source='ndr/ndr_schannel.c gen_ndr/ndr_schannel.c',
public_deps='ndr ndr_nbt'
)
bld.SAMBA_SUBSYSTEM('NDR_NBT',
source='',
deps='ndr_nbt')
bld.SAMBA_LIBRARY('ndr_nbt',
source='gen_ndr/ndr_nbt.c ndr/ndr_nbt.c',
public_deps='ndr NDR_NBT_BUF NDR_SECURITY',
public_headers='gen_ndr/nbt.h gen_ndr/ndr_nbt.h ndr/ndr_nbt.h',
header_path=[ ('gen_ndr*', 'gen_ndr'), ('ndr*', 'ndr')],
pc_files='ndr_nbt.pc',
vnum='0.0.1'
)
bld.SAMBA_SUBSYSTEM('NDR_BACKUPKEY',
source='ndr/ndr_backupkey.c gen_ndr/ndr_backupkey.c',
public_deps='ndr NDR_SECURITY'
)
bld.SAMBA_SUBSYSTEM('NDR_PREG',
source='gen_ndr/ndr_preg.c ndr/ndr_preg.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_CAB',
source='''
gen_ndr/ndr_cab.c
ndr/ndr_cab.c
''',
public_deps='ndr NDR_COMPRESSION')
bld.SAMBA_SUBSYSTEM('NDR_FILE_ID',
source='gen_ndr/ndr_file_id.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('NDR_MESSAGING',
source='gen_ndr/ndr_messaging.c',
public_deps='ndr NDR_SERVER_ID'
)
bld.SAMBA_SUBSYSTEM('NDR_WINSTATION',
source='gen_ndr/ndr_winstation.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_ATSVC',
source='gen_ndr/ndr_atsvc_c.c',
public_deps='dcerpc-binding NDR_ATSVC'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_ECHO',
source='gen_ndr/ndr_echo_c.c',
public_deps='dcerpc-binding NDR_ECHO'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_LSA',
source='gen_ndr/ndr_lsa_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_SAMR',
source='gen_ndr/ndr_samr_c.c',
public_deps='dcerpc-binding NDR_SAMR'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_DFS',
source='gen_ndr/ndr_dfs_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_FRSAPI',
source='gen_ndr/ndr_frsapi_c.c',
public_deps='dcerpc-binding NDR_FRSAPI'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_DRSUAPI',
source='gen_ndr/ndr_drsuapi_c.c',
public_deps='dcerpc-binding NDR_DRSUAPI'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_UNIXINFO',
source='gen_ndr/ndr_unixinfo_c.c',
public_deps='dcerpc-binding NDR_UNIXINFO'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_BROWSER',
source='gen_ndr/ndr_browser_c.c',
public_deps='dcerpc-binding NDR_BROWSER'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_SPOOLSS',
source='gen_ndr/ndr_spoolss_c.c',
public_deps='dcerpc-binding NDR_SPOOLSS'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_WINSPOOL',
source='gen_ndr/ndr_winspool_c.c',
public_deps='dcerpc-binding NDR_WINSPOOL'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_WKSSVC',
source='gen_ndr/ndr_wkssvc_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_SRVSVC',
source='gen_ndr/ndr_srvsvc_c.c',
public_deps='dcerpc-binding NDR_SRVSVC'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_SVCCTL',
source='gen_ndr/ndr_svcctl_c.c',
public_deps='dcerpc-binding ndr-standard',
public_headers='gen_ndr/ndr_svcctl_c.h ndr/ndr_svcctl.h',
header_path=[ ('gen_ndr*', 'gen_ndr'), ('ndr*', 'ndr')]
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_EVENTLOG',
source='gen_ndr/ndr_eventlog_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_EPMAPPER',
source='gen_ndr/ndr_epmapper_c.c',
public_deps='tevent NDR_EPMAPPER'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_DSSETUP',
source='gen_ndr/ndr_dssetup_c.c',
public_deps='dcerpc-binding NDR_DSSETUP'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_WINREG',
source='gen_ndr/ndr_winreg_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_INITSHUTDOWN',
source='gen_ndr/ndr_initshutdown_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_MGMT',
source='gen_ndr/ndr_mgmt_c.c',
deps='tevent NDR_MGMT'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_OXIDRESOLVER',
source='gen_ndr/ndr_oxidresolver_c.c',
public_deps='dcerpc-binding NDR_OXIDRESOLVER'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_REMACT',
source='gen_ndr/ndr_remact_c.c',
public_deps='dcerpc-binding NDR_REMACT'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_NTSVCS',
source='gen_ndr/ndr_ntsvcs_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_NETLOGON',
source='gen_ndr/ndr_netlogon_c.c',
public_deps='ndr-standard tevent'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_BACKUPKEY',
source='gen_ndr/ndr_backupkey_c.c',
public_deps='dcerpc-binding NDR_BACKUPKEY'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_DNSSERVER',
source='gen_ndr/ndr_dnsserver_c.c',
public_deps='dcerpc-binding ndr-standard'
)
bld.SAMBA_SUBSYSTEM('NDR_IOCTL',
source='gen_ndr/ndr_ioctl.c ndr/ndr_ioctl.c',
public_deps='ndr'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_FSRVP',
source='gen_ndr/ndr_fsrvp_c.c',
public_deps='dcerpc-binding NDR_FSRVP'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_WITNESS',
source='gen_ndr/ndr_witness_c.c',
public_deps='dcerpc-binding NDR_WITNESS'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_CLUSAPI',
source='gen_ndr/ndr_clusapi_c.c',
public_deps='dcerpc-binding NDR_CLUSAPI'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_MDSSVC',
source='gen_ndr/ndr_mdssvc_c.c',
public_deps='dcerpc-binding NDR_MDSSVC'
)
# a grouping library for NDR subsystems that may be used by more than one target
bld.SAMBA_LIBRARY('ndr-samba',
source=[],
deps='''NDR_DRSBLOBS NDR_DRSUAPI NDR_IDMAP NDR_NTLMSSP NDR_NEGOEX NDR_SCHANNEL NDR_MGMT
NDR_DNSSERVER NDR_EPMAPPER NDR_XATTR NDR_UNIXINFO NDR_NAMED_PIPE_AUTH NDR_DCOM
NDR_NTPRINTING NDR_FSRVP NDR_WITNESS NDR_MDSSVC NDR_OPEN_FILES NDR_SMBXSRV''',
private_library=True,
grouping_library=True
)
# a grouping library for RPC_NDR subsystems that may be used by more than one target
bld.SAMBA_LIBRARY('dcerpc-samba',
source='',
deps='''RPC_NDR_LSA RPC_NDR_SAMR RPC_NDR_NETLOGON RPC_NDR_EVENTLOG
RPC_NDR_DFS RPC_NDR_NTSVCS RPC_NDR_SVCCTL RPC_NDR_INITSHUTDOWN
RPC_NDR_WKSSVC RPC_NDR_SRVSVC RPC_NDR_WINREG RPC_NDR_ECHO RPC_NDR_EPMAPPER
RPC_NDR_ATSVC RPC_NDR_SPOOLSS RPC_NDR_DNSSERVER''',
public_deps='ndr-standard',
private_library=True,
grouping_library=True
)
bld.SAMBA_SUBSYSTEM('NDR_MISC',
source='',
deps='ndr')
bld.SAMBA_LIBRARY('ndr',
source='ndr/ndr_string.c ndr/ndr_basic.c ndr/uuid.c ndr/ndr.c ndr/ndr_misc.c gen_ndr/ndr_misc.c ndr/util.c',
pc_files='ndr.pc',
public_deps='samba-errors talloc samba-util util_str_hex',
public_headers='gen_ndr/misc.h gen_ndr/ndr_misc.h ndr/libndr.h:ndr.h',
header_path= [('*gen_ndr*', 'gen_ndr')],
vnum='1.0.0',
abi_directory='ABI',
abi_match='!ndr_table_* ndr_* GUID_* _ndr_pull_error _ndr_push_error',
)
bld.SAMBA_LIBRARY('dcerpc-binding',
source='rpc/dcerpc_error.c rpc/binding.c rpc/dcerpc_util.c rpc/binding_handle.c',
deps='ndr tevent NDR_DCERPC LIBTSOCKET tevent-util gensec',
pc_files=[],
public_headers='rpc/rpc_common.h',
vnum='0.0.1')
bld.SAMBA_LIBRARY('dcerpc-server-core',
source='''
rpc/dcesrv_core.c
rpc/dcesrv_auth.c
rpc/dcesrv_mgmt.c
rpc/dcesrv_reply.c
rpc/dcesrv_handles.c
''',
deps='ndr dcerpc-binding samba-util-core gnutls GNUTLS_HELPERS',
pc_files=[],
public_headers='rpc/dcesrv_core.h',
autoproto='rpc/dcesrv_core_proto.h',
vnum='0.0.1')
bld.SAMBA_SUBSYSTEM('NDR_WINBIND',
source='gen_ndr/ndr_winbind.c',
public_deps='ndr NDR_LSA'
)
bld.SAMBA_SUBSYSTEM('RPC_NDR_WINBIND',
source='gen_ndr/ndr_winbind_c.c',
public_deps='dcerpc NDR_WINBIND'
)
bld.SAMBA_SUBSYSTEM('NDR_FSRVP_STATE',
source='gen_ndr/ndr_fsrvp_state.c',
public_deps='ndr'
)
#
# Cmocka tests
#
bld.SAMBA_BINARY('test_ndr_macros',
source='tests/test_ndr_macros.c',
deps='''
cmocka
ndr
''',
for_selftest=True)
bld.SAMBA_BINARY('test_ndr_string',
source='tests/test_ndr_string.c',
deps='''
cmocka
talloc
ndr
''',
for_selftest=True)
bld.SAMBA_BINARY('test_ndr',
source='tests/test_ndr.c',
deps='''
cmocka
ndr
''',
for_selftest=True)
bld.SAMBA_BINARY('test_ndr_dns_nbt',
source='tests/test_ndr_dns_nbt.c',
deps='''
cmocka
ndr
ndr_nbt
NDR_DNS
''',
for_selftest=True)