mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
e73ccc06ef
This removes quite a bit of code. All reasonable systems have /dev/urandom these days. Linux, Solaris and the BSDs do. In case we find a system without /dev/urandom, we will have to go hunting in other libraries. The main reason for this is speed: On Ubuntu 14.04 doing direct reads from /dev/urandom is 2-3 times faster than our md4 based code. On virtualized FreeBSD 10 the difference is even larger. My first approach was to use fopen/fread. It was even faster, but less than twice as fast. So I thought we could save the additional complexity when having to deal with throwing away buffers when forking and the additional memory footprint per process. With this simple generate_random_buffer it will be easier to adapt new syscalls to get randomness. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Tue Oct 13 04:25:39 CEST 2015 on sn-devel-104
196 lines
7.2 KiB
Python
Executable File
196 lines
7.2 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
# Please add any new SAMBA_SUBSYSTEM/SAMBA_LIBRARY to the bottom of the file
|
|
# unless they are also required to build standalone ctdb.
|
|
|
|
bld.SAMBA_LIBRARY('time-basic',
|
|
source='time_basic.c',
|
|
deps='replace',
|
|
private_library=True,
|
|
local_include=False)
|
|
|
|
bld.SAMBA_SUBSYSTEM('tini',
|
|
source='tini.c',
|
|
deps='',
|
|
local_include=False)
|
|
|
|
bld.SAMBA_SUBSYSTEM('tiniparser',
|
|
source='tiniparser.c',
|
|
deps='tini',
|
|
local_include=False)
|
|
|
|
bld.SAMBA_SUBSYSTEM('strv',
|
|
source='strv.c',
|
|
deps='talloc',
|
|
local_include=False)
|
|
|
|
bld.SAMBA_SUBSYSTEM('close-low-fd',
|
|
source='close_low_fd.c',
|
|
deps='replace',
|
|
local_include=False)
|
|
|
|
samba_debug_add_deps = ''
|
|
samba_debug_add_inc = ''
|
|
|
|
if bld.CONFIG_SET('HAVE_GPFS'):
|
|
bld.SAMBA_SUBSYSTEM('gpfswrap',
|
|
source='gpfswrap.c',
|
|
deps='replace',
|
|
local_include=False,
|
|
includes=bld.CONFIG_GET('CPPPATH_GPFS'))
|
|
samba_debug_add_deps += ' gpfswrap'
|
|
samba_debug_add_inc += bld.CONFIG_GET('CPPPATH_GPFS')
|
|
|
|
bld.SAMBA_LIBRARY('samba-debug',
|
|
source='debug.c',
|
|
deps='replace time-basic close-low-fd talloc socket-blocking' + samba_debug_add_deps,
|
|
public_deps='systemd systemd-journal lttng-ust',
|
|
local_include=False,
|
|
includes=samba_debug_add_inc,
|
|
private_library=True)
|
|
|
|
bld.SAMBA_LIBRARY('socket-blocking',
|
|
source='blocking.c',
|
|
local_include=False,
|
|
private_library=True)
|
|
|
|
bld.SAMBA_LIBRARY('talloc_report',
|
|
source='talloc_report.c',
|
|
local_include=False,
|
|
public_deps='talloc',
|
|
private_library=True
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('samba-util-core',
|
|
source='''xfile.c data_blob.c util_file.c time.c
|
|
signal.c util.c idtree.c fault.c
|
|
substitute.c''',
|
|
deps='''time-basic samba-debug socket-blocking talloc
|
|
tevent execinfo pthread''',
|
|
local_include=False)
|
|
|
|
bld.SAMBA_LIBRARY('tevent-unix-util',
|
|
source='tevent_unix.c',
|
|
local_include=False,
|
|
deps='tevent',
|
|
public_headers='tevent_unix.h',
|
|
header_path=[ ('*', 'util') ],
|
|
pc_files=[],
|
|
vnum='0.0.1')
|
|
|
|
if not bld.env.SAMBA_UTIL_CORE_ONLY:
|
|
|
|
bld.env.public_headers_skip.append('charset_compat.h')
|
|
|
|
bld.SAMBA_LIBRARY('genrand',
|
|
source='genrand.c',
|
|
deps='replace socket-blocking sys_rw',
|
|
local_include=False,
|
|
private_library=True)
|
|
|
|
bld.SAMBA_BINARY('genrandperf',
|
|
source='tests/genrandperf.c',
|
|
deps='genrand replace',
|
|
local_include=False,
|
|
install=False)
|
|
|
|
bld.SAMBA_LIBRARY('samba-util',
|
|
source='''talloc_stack.c smb_threads.c
|
|
rbtree.c rfc1738.c become_daemon.c system.c select.c getpass.c
|
|
genrand_util.c fsusage.c
|
|
params.c util_id.c util_net.c
|
|
util_strlist.c util_paths.c idtree_random.c base64.c
|
|
util_str.c util_str_common.c ms_fnmatch.c
|
|
server_id.c dprintf.c bitmap.c pidfile.c
|
|
tevent_debug.c util_process.c memcache.c''',
|
|
deps='samba-util-core DYNCONFIG close-low-fd tini tiniparser genrand',
|
|
|
|
public_deps='talloc tevent execinfo pthread LIBCRYPTO charset util_setid systemd systemd-daemon',
|
|
public_headers='debug.h attr.h byteorder.h data_blob.h memory.h safe_string.h time.h talloc_stack.h xfile.h dlinklist.h samba_util.h string_wrappers.h idtree.h idtree_random.h blocking.h signal.h substitute.h fault.h genrand.h',
|
|
header_path= [ ('dlinklist.h samba_util.h', '.'), ('*', 'util') ],
|
|
local_include=False,
|
|
vnum='0.0.1',
|
|
pc_files='samba-util.pc'
|
|
)
|
|
|
|
bld.SAMBA_LIBRARY('samba-modules',
|
|
source='modules.c',
|
|
deps='errors samba-util',
|
|
local_include=False,
|
|
private_library=True)
|
|
|
|
bld.SAMBA_LIBRARY('asn1util',
|
|
source='asn1.c',
|
|
deps='talloc samba-util',
|
|
private_library=True,
|
|
local_include=False)
|
|
|
|
|
|
bld.SAMBA_SUBSYSTEM('UNIX_PRIVS',
|
|
source='unix_privs.c',
|
|
autoproto='unix_privs.h',
|
|
deps='replace talloc',
|
|
local_include=False,
|
|
)
|
|
|
|
|
|
bld.SAMBA_LIBRARY('util_tdb',
|
|
source='util_tdb.c',
|
|
local_include=False,
|
|
public_deps='tdb talloc',
|
|
private_library=True
|
|
)
|
|
|
|
bld.SAMBA_LIBRARY('tevent-util',
|
|
source='tevent_ntstatus.c tevent_werror.c',
|
|
local_include=False,
|
|
public_deps='tevent errors tevent-unix-util',
|
|
public_headers='tevent_ntstatus.h tevent_werror.h',
|
|
header_path=[ ('*', 'util') ],
|
|
pc_files=[],
|
|
vnum='0.0.1'
|
|
)
|
|
|
|
bld.SAMBA_LIBRARY('util_setid',
|
|
source='setid.c',
|
|
local_include=False,
|
|
private_library=True
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('util_ldb',
|
|
source='util_ldb.c',
|
|
local_include=False,
|
|
public_deps='ldb',
|
|
public_headers='util_ldb.h'
|
|
)
|
|
|
|
|
|
bld.SAMBA_SUBSYSTEM('UTIL_RUNCMD',
|
|
source='util_runcmd.c',
|
|
local_include=False,
|
|
public_deps='tevent'
|
|
)
|
|
|
|
bld.SAMBA_SUBSYSTEM('UTIL_PW',
|
|
source='util_pw.c',
|
|
local_include=False,
|
|
public_deps='talloc'
|
|
)
|
|
|
|
bld.SAMBA_LIBRARY('server_id_db',
|
|
source='server_id_db.c',
|
|
deps='talloc tdb strv util_tdb tdb-wrap samba-util',
|
|
local_include=False,
|
|
private_library=True)
|
|
|
|
bld.SAMBA_LIBRARY('iov_buf',
|
|
source='iov_buf.c',
|
|
local_include=False,
|
|
private_library=True)
|
|
|
|
bld.SAMBA3_LIBRARY('sys_rw',
|
|
source='sys_rw.c sys_rw_data.c',
|
|
deps='replace iov_buf',
|
|
local_include=False,
|
|
private_library=True)
|