mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
70923b7521
The ndr token code keeps a temporary store of tokens which are referred to a small number of times (often once) before being discarded. The access patterns are somewhat stack-like, with recently placed tokens being accessed most often. The old code kept these tokens in a linked list, which we replace with a self-resizing array. This keeps everything roughly the same in big-O terms, but makes it all faster in practice by vastly reducing the amount of tallocing and pointer-chasing. The peak memory use is strictly reduced. On a 64 bit machine each core token struct fits in 16 bytes (after padding) while the two pointers used by the DLIST add another 16 bytes, so the overall list allocation is the same as the peak 2n array allocation -- except in the list case it is dwarfed by the talloc and malloc metadata overhead. Before settling on the resized arrays, we tried red-black trees, which are bound to be better for large ndr structures. As it happens, we don't deal with large structures (the size of replication clumps is limited to 400 objects) and the asymptotic benefits of the trees are not realised in practice. With luck you should find graphs comparing the performance of these various techniques at: https://www.samba.org/~dbagnall/perf-tests/ndr-token/ This necessarily breaks the ABI because the linked list implementation was publicly exposed. Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Thu Mar 2 08:38:22 CET 2017 on sn-devel-144
749 lines
19 KiB
Python
749 lines
19 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',
|
|
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'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_FRSRPC',
|
|
source='gen_ndr/ndr_frsrpc_c.c',
|
|
public_deps='NDR_FRSRPC'
|
|
)
|
|
|
|
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'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('NDR_FSCC',
|
|
source='gen_ndr/ndr_fscc.c',
|
|
public_deps='ndr'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('NDR_FRSBLOBS',
|
|
source='gen_ndr/ndr_frsblobs.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'
|
|
)
|
|
|
|
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_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'
|
|
)
|
|
|
|
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'
|
|
)
|
|
|
|
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_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='gen_ndr/ndr_eventlog6.c',
|
|
vnum='0.0.1',
|
|
pc_files='ndr_standard.pc',
|
|
deps='''NDR_SECURITY NDR_LSA NDR_SAMR NDR_NETLOGON NDR_EVENTLOG 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_SCHANNEL',
|
|
source='ndr/ndr_schannel.c gen_ndr/ndr_schannel.c',
|
|
public_deps='ndr 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'
|
|
)
|
|
|
|
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')
|
|
|
|
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('RPC_NDR_XATTR',
|
|
source='gen_ndr/ndr_xattr_c.c',
|
|
public_deps='NDR_XATTR dcerpc-binding'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_IDMAP',
|
|
source='gen_ndr/ndr_idmap_c.c',
|
|
public_deps='NDR_IDMAP dcerpc-binding'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_SMB_ACL',
|
|
source='gen_ndr/ndr_smb_acl_c.c',
|
|
public_deps='NDR_SMB_ACL dcerpc-binding'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_ROT',
|
|
source='gen_ndr/ndr_rot_c.c',
|
|
public_deps='NDR_ROT dcerpc-binding'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_ATSVC',
|
|
source='gen_ndr/ndr_atsvc_c.c',
|
|
public_deps='dcerpc-binding NDR_ATSVC'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_AUDIOSRV',
|
|
source='gen_ndr/ndr_audiosrv_c.c',
|
|
public_deps='NDR_AUDIOSRV dcerpc-binding'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_ECHO',
|
|
source='gen_ndr/ndr_echo_c.c',
|
|
public_deps='dcerpc-binding NDR_ECHO'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_DSBACKUP',
|
|
source='gen_ndr/ndr_dsbackup_c.c',
|
|
public_deps='dcerpc-binding NDR_DSBACKUP'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_EFS',
|
|
source='gen_ndr/ndr_efs_c.c',
|
|
public_deps='dcerpc-binding NDR_EFS'
|
|
)
|
|
|
|
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_DRSBLOBS',
|
|
source='gen_ndr/ndr_drsblobs_c.c',
|
|
public_deps='dcerpc-binding NDR_DRSBLOBS'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_POLICYAGENT',
|
|
source='gen_ndr/ndr_policyagent_c.c',
|
|
public_deps='dcerpc-binding NDR_POLICYAGENT'
|
|
)
|
|
|
|
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_NBT',
|
|
source='gen_ndr/ndr_nbt_c.c',
|
|
public_deps='dcerpc-binding ndr_nbt'
|
|
)
|
|
|
|
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_DBGIDL',
|
|
source='gen_ndr/ndr_dbgidl_c.c',
|
|
public_deps='dcerpc-binding NDR_DBGIDL'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_DSSETUP',
|
|
source='gen_ndr/ndr_dssetup_c.c',
|
|
public_deps='dcerpc-binding NDR_DSSETUP'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_MSGSVC',
|
|
source='gen_ndr/ndr_msgsvc_c.c',
|
|
public_deps='dcerpc-binding NDR_MSGSVC'
|
|
)
|
|
|
|
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_WZCSVC',
|
|
source='gen_ndr/ndr_wzcsvc_c.c',
|
|
public_deps='dcerpc-binding NDR_WZCSVC'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_W32TIME',
|
|
source='gen_ndr/ndr_w32time_c.c',
|
|
public_deps='dcerpc-binding NDR_W32TIME'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_SCERPC',
|
|
source='gen_ndr/ndr_scerpc_c.c',
|
|
public_deps='dcerpc-binding NDR_SCERPC'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_SERVER_ID',
|
|
source='gen_ndr/ndr_server_id_c.c',
|
|
public_deps='dcerpc-binding NDR_SERVER_ID'
|
|
)
|
|
|
|
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_TRKWKS',
|
|
source='gen_ndr/ndr_trkwks_c.c',
|
|
public_deps='dcerpc-binding NDR_TRKWKS'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('RPC_NDR_KEYSVC',
|
|
source='gen_ndr/ndr_keysvc_c.c',
|
|
public_deps='dcerpc-binding NDR_KEYSVC'
|
|
)
|
|
|
|
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_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',
|
|
public_headers='gen_ndr/misc.h gen_ndr/ndr_misc.h ndr/libndr.h:ndr.h',
|
|
header_path= [('*gen_ndr*', 'gen_ndr')],
|
|
vnum='0.1.0',
|
|
abi_directory='ABI',
|
|
abi_match='ndr_* GUID_*',
|
|
)
|
|
|
|
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_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.SAMBA3_SUBSYSTEM('SRV_NDR_WINBIND',
|
|
source='gen_ndr/srv_winbind.c',
|
|
public_deps='NDR_WINBIND'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('NDR_FSRVP_STATE',
|
|
source='gen_ndr/ndr_fsrvp_state.c',
|
|
public_deps='ndr'
|
|
)
|