1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-28 07:21:54 +03:00
samba-mirror/librpc/wscript_build
Douglas Bagnall cc3a67760c CVE-2020-10745: ndr/dns-utils: prepare for NBT compatibility
NBT has a funny thing where it sometimes needs to send a trailing dot as
part of the last component, because the string representation is a user
name. In DNS, "example.com", and "example.com." are the same, both
having three components ("example", "com", ""); in NBT, we want to treat
them differently, with the second form having the three components
("example", "com.", "").

This retains the logic of e6e2ec0001.

Also DNS compression cannot be turned off for NBT.

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

723 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 NDR_DNS',
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
''',
for_selftest=True)