1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-05 09:18:06 +03:00
samba-mirror/lib/util
Joseph Sutton cbe6fb38ec lib/tfork: Don't overwrite 'ret' in cleanup phase
The cleanup phase of tfork_create() saves errno prior to calling
functions that might modify it, with the intention of restoring it
afterwards. However, the value of 'ret' is accidentally overwritten. It
will always be equal to 0, and hence errno will not be restored.

Fix this by introducing a new variable, ret2, for calling functions in
the cleanup phase.

Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Jeremy Allison <jra@samba.org>
2023-01-10 20:22:32 +00:00
..
charset lib: Fix a typo 2022-08-26 18:54:37 +00:00
debug-classes util/debug: share classname table with tests 2022-06-17 01:28:30 +00:00
tests lib: Remove idtree from samba_util.h 2023-01-10 00:28:37 +00:00
access.c lib/util/access: source3/auth/user_util: Check for INNETGR 2022-08-08 07:28:31 +00:00
access.h lib: util: Add allow_access_nolog(). 2016-11-16 12:41:09 +01:00
asn1.c asn1: Remove unused function asn1_check_enumerated() 2021-04-01 17:50:49 +00:00
asn1.h asn1: Remove unused function asn1_check_enumerated() 2021-04-01 17:50:49 +00:00
attr.h replace, attr.: use function attributes only if supported by feature macro (or old gcc) 2020-05-24 23:55:36 +00:00
base64.c util/base64: decode_data_blob_talloc catches talloc error 2022-05-12 02:22:35 +00:00
base64.h lib: Give base64.c its own .h 2016-05-04 01:28:23 +02:00
become_daemon.c lib:util: Fix log level for normal startup message 2021-05-20 15:07:28 +00:00
become_daemon.h lib: Remove close_low_fds() 2021-04-27 13:24:35 +00:00
binsearch.h binsearch.h: Re-licence under LGPLv3 per agreement of the copyright holders 2017-09-22 21:20:23 +02:00
bitmap.c lib:util: Fix undefined behavior in bitmap.c 2018-11-22 22:13:27 +01:00
bitmap.h
blocking.c lib: Provide a meaningful errno if FD_CLOEXEC is missing 2021-01-26 00:10:31 +00:00
blocking.h lib/util: Add a generic definition for set_close_on_exec 2016-06-08 10:33:19 +02:00
bytearray.h lib:util: Add (PULL|PUSH)_(BE|LE)_I(8|16|32|64) byterarray macros 2020-02-21 03:35:58 +00:00
byteorder.h lib:util: Add comments to use bytearray.h to byteorder.h 2020-02-21 02:09:33 +00:00
charset_compat.h
close_low_fd.c
close_low_fd.h
data_blob.c lib/util: Change function to mem_equal_const_time() 2022-06-09 22:49:29 +00:00
data_blob.h lib/util: Change function to data_blob_equal_const_time() 2022-06-09 22:49:29 +00:00
debug_s3.c debug: Add new smb.conf option "debug syslog format" 2021-11-01 07:29:47 +00:00
debug_s3.h
debug.c lib: Use talloc_asprintf_addbuf() in debug.c 2022-12-14 04:32:34 +00:00
debug.h debug: Add DEBUGLF macro with explicit location and function parameters. 2022-07-15 14:25:37 +00:00
discard.h lib:util: Move discard_const(_p) to own header for libndr.h 2019-02-14 15:59:26 +01:00
dlinklist.h DLIST_REMOVE: clang: Fix dereference of a null pointer warning 2019-06-11 12:10:17 +00:00
Doxyfile
dprintf.c lib: Remove a few #include "includes.h" 2022-07-25 12:04:33 +00:00
fault.c lib/util: Prefer backtrace_symbols() for internal backtraces 2022-06-09 22:49:29 +00:00
fault.h lib/util: add unlikely() to SMB_ASSERT() 2022-08-19 18:41:34 +00:00
fsusage.c lib: Remove a few #include "includes.h" 2022-07-25 12:04:33 +00:00
genrand_util.c lib:util: Zero memory in generate_random_machine_password() 2022-08-26 07:59:32 +00:00
genrand.c util/genrand: don't ignore errors in random number generation 2022-07-28 05:23:28 +00:00
genrand.h lib:util: Fix documentation for random number functions 2019-08-14 15:07:24 +00:00
getpass.c
gpfswrap.c lib/util/gpfswrap: remove unused gpfswrap_get_winattrs_path() 2022-06-03 21:53:31 +00:00
gpfswrap.h lib/util/gpfswrap: remove unused gpfswrap_get_winattrs_path() 2022-06-03 21:53:31 +00:00
idtree_random.c lib: Add "starting_id" to idr_get_new_random() 2023-01-10 00:28:37 +00:00
idtree_random.h lib: Add "starting_id" to idr_get_new_random() 2023-01-10 00:28:37 +00:00
idtree.c lib:util: Fix undefined behavior in idtree 2018-11-22 22:13:27 +01:00
idtree.h lib: Remove a duplicate function prototype 2019-08-19 23:14:38 +00:00
iov_buf.c lib/util: clang: Fix 'Null pointer passed as an argument' 2019-07-08 09:30:09 +00:00
iov_buf.h lib: Make lib/util/iov_buf.h self-contained 2022-11-22 18:27:33 +00:00
mainpage.dox
memcache.c lib:util: Avoid free'ing our own pointer 2021-02-03 10:57:01 +00:00
memcache.h smbd: Add filename_convert_dirfsp() 2022-04-28 13:12:33 +00:00
memory.h lib:util: Add BURN_FREE() and BURN_FREE_STR() 2022-08-26 07:59:32 +00:00
mkdir_p.c lib:util: Fix string check in mkdir_p() 2018-05-17 17:30:09 +02:00
mkdir_p.h gpo: move mkdir_p to lib/util 2017-11-20 21:41:14 +01:00
modules.c lib: Give util_paths.c its own header 2017-06-24 01:21:10 +02:00
ms_fnmatch.c lib: Whitespace fixes 2022-11-22 18:27:33 +00:00
msghdr.c util: Fix signed/unsigned comparisons by casting 2019-07-01 08:00:29 +00:00
msghdr.h lib: Move msghdr to lib/util/ 2016-06-07 14:34:10 +02:00
params.c lib: Simplify pm_process() 2022-02-07 19:58:57 +00:00
pidfile.c lib:util: Initialize pid 2021-12-15 19:32:30 +00:00
pidfile.h lib: Make pidfile_path_create() return the existing PID on conflict 2021-03-16 17:09:32 +00:00
rbtree.c lib/util: clang: Fix dereference of a null pointer warning 2019-06-11 12:10:17 +00:00
rbtree.h
README
rfc1738.c lib: Use hex_byte() in rfc1738_unescape() 2021-01-08 20:31:33 +00:00
safe_string.h lib/util: remove extra safe_string.h file 2020-08-28 02:18:40 +00:00
samba_modules.h lib:util: Make probing of modules more secure 2017-06-06 18:36:07 +02:00
samba_util.h lib: Remove idtree from samba_util.h 2023-01-10 00:28:37 +00:00
samba-util.pc.in
select.c lib: Avoid an includes.h 2017-03-20 12:20:08 +01:00
select.h
server_id_db.c lib: Fix return of server_id_db_prune_name() 2019-07-03 10:51:32 +00:00
server_id_db.h
server_id.c lib: Slightly simplify server_id_set_disconnected() 2021-06-04 17:34:06 +00:00
server_id.h lib: Add server_id_cmp() 2019-09-17 22:49:36 +00:00
setid.c lib:util: Always include unistd.h for setgroups 2018-11-22 22:13:27 +01:00
setid.h
signal.c
signal.h lib/util: Add signal.h include 2021-12-13 16:22:28 +00:00
smb_strtox.c lib: fix smb_strtox.[c|h] license header 2020-08-05 10:17:06 +00:00
smb_strtox.h lib: fix smb_strtox.[c|h] license header 2020-08-05 10:17:06 +00:00
smb_threads_internal.h
smb_threads.c lib: Remove an unneeded includes.h 2022-04-26 21:41:29 +00:00
smb_threads.h lib: smb_threads: fix access before init bug 2018-07-04 21:07:09 +02:00
stable_sort.c util: add stable sort functions 2022-12-01 22:56:39 +00:00
stable_sort.h util: add stable sort functions 2022-12-01 22:56:39 +00:00
string_wrappers.h string_wrappers: include replace.h 2020-08-28 00:56:34 +00:00
strv_util.c util: Fix include file order 2018-11-30 08:12:31 +01:00
strv_util.h lib/util: Add strv_util.[ch] containing new function strv_split() 2016-03-01 05:43:19 +01:00
strv.c lib: Allow parsing a strv from a non-talloc const buf 2017-11-29 16:59:16 +01:00
strv.h lib: Fix includes in strv.h 2021-04-19 18:18:31 +00:00
substitute.c util:str_sub: talloc_free on error 2021-03-11 21:42:43 +00:00
substitute.h lib/util: Replace buggy string_sub_talloc() with talloc_string_sub() in lib/util 2021-03-10 08:06:25 +00:00
sys_popen.c lib: Fix CID 1445648 Null pointer dereferences 2019-05-28 20:27:14 +00:00
sys_popen.h lib: util: Finally remove possibilities of using sys_popen() unsafely. 2019-05-24 19:00:06 +00:00
sys_rw_data.c util: Fix signed/unsigned comparisons by casting 2019-07-01 08:00:29 +00:00
sys_rw_data.h
sys_rw.c lib: add sys_block_align[_truncate]() 2021-10-08 19:28:32 +00:00
sys_rw.h lib: add sys_block_align[_truncate]() 2021-10-08 19:28:32 +00:00
system.c
talloc_keep_secret.c lib:util: Check memset_s() error code in talloc_keep_secret_destructor() 2022-09-12 23:07:38 +00:00
talloc_keep_secret.h lib:util: Add support to keep talloc chunks secret 2019-04-03 06:48:21 +00:00
talloc_report_printf.c lib: Add talloc_full_report_printf() 2019-09-18 20:10:24 +00:00
talloc_report_printf.h lib: Add talloc_full_report_printf() 2019-09-18 20:10:24 +00:00
talloc_report.c util: Fix signed/unsigned comparisons by casting 2019-07-01 08:00:29 +00:00
talloc_report.h
talloc_stack.c lib: Remove an unneeded includes.h 2022-04-26 21:41:29 +00:00
talloc_stack.h util: Update GPL header of talloc_stack.h 2016-02-12 09:01:14 +01:00
tevent_debug.c
tevent_ntstatus.c
tevent_ntstatus.h
tevent_req_profile.c lib: Avoid the use of open_memstream in tevent_req_profile_string 2018-10-08 22:17:11 +02:00
tevent_req_profile.h lib: Avoid the use of open_memstream in tevent_req_profile_string 2018-10-08 22:17:11 +02:00
tevent_unix.c
tevent_unix.h
tevent_werror.c werror: replace WERR_NOMEM with WERR_NOT_ENOUGH_MEMORY in lib/util/tevent_werror.c 2016-09-28 00:04:18 +02:00
tevent_werror.h
tfork.c lib/tfork: Don't overwrite 'ret' in cleanup phase 2023-01-10 20:22:32 +00:00
tfork.h lib: Fix a typo 2019-10-02 08:01:40 +00:00
tftw.c lib: Remove some unneeded #includes from tftw.c 2019-10-02 08:01:40 +00:00
tftw.h util: Add file tree walk interface 2019-01-28 15:44:18 +01:00
time_basic.c time_basic.h: Remove unnecessary dependency on replace.h 2016-01-13 04:43:23 +01:00
time_basic.h time_basic.h: Remove unnecessary dependency on replace.h 2016-01-13 04:43:23 +01:00
time.c lib: util: Make nt_time_to_full_timespec() call nt_time_to_unix_timespec_raw() for the conversion. 2022-01-11 01:36:51 +00:00
time.h lib: Fix the FreeBSD build 2022-07-23 23:29:38 +00:00
tini.c lib/util: add pm_process_with_flags to allow parsing ini files with empty values 2017-01-06 12:28:19 +01:00
tini.h lib/util: add pm_process_with_flags to allow parsing ini files with empty values 2017-01-06 12:28:19 +01:00
tiniparser.c lib: CID 1452289: API usage errors (USE_AFTER_FREE) 2019-08-14 07:39:38 +00:00
tiniparser.h Add fuzzing binary for tiniparser 2019-08-07 06:07:28 +00:00
tsort.h
unix_match.c lib/util: Move unix_wild_match() from source3/lib/util to lib/util/ 2016-11-16 12:41:09 +01:00
unix_match.h lib/util: Move unix_wild_match() from source3/lib/util to lib/util/ 2016-11-16 12:41:09 +01:00
unix_privs.c lib: Remove an unneeded includes.h 2022-04-26 21:41:29 +00:00
util_file.c lib: Fix file_lines_parse() to do what people expect. Much safer to use. 2020-11-13 16:22:32 +00:00
util_id.c lib: Remove a few #include "includes.h" 2022-07-25 12:04:33 +00:00
util_ldb.c lib: Remove an unneeded includes.h 2022-04-26 21:41:29 +00:00
util_ldb.h
util_net.c lib: Use talloc_asprintf_addbuf() in print_socket_options() 2022-12-14 04:32:34 +00:00
util_net.h lib: Add samba_sockaddr_[gs]et_port() 2021-01-11 13:19:32 +00:00
util_paths.c lib: Remove a few #include "includes.h" 2022-07-25 12:04:33 +00:00
util_paths.h lib:util: Add path_expand_tilde() 2020-05-15 13:18:38 +00:00
util_process.c lib/util: add process_set_title() 2022-12-14 01:38:29 +00:00
util_process.h lib/util: add process_set_title() 2022-12-14 01:38:29 +00:00
util_pw.c lib: Avoid an includes.h 2017-03-28 17:45:19 +02:00
util_pw.h
util_runcmd.c lib: Fix the build on FreeBSD 2021-01-25 09:48:09 +00:00
util_str_common.c lib: Remove a few #include "includes.h" 2022-07-25 12:04:33 +00:00
util_str_escape.c lib: Remove a few #include "includes.h" 2022-07-25 12:04:33 +00:00
util_str_escape.h lib/util: Add functions to escape log lines but not break all non-ascii 2017-03-29 02:37:26 +02:00
util_str_hex.c lib: Simplify parse_guid_string() and ndr_syntax_id_from_string() 2021-01-28 16:58:35 +00:00
util_str_hex.h lib: Simplify parse_guid_string() and ndr_syntax_id_from_string() 2021-01-28 16:58:35 +00:00
util_str.c lib: Move talloc_asprintf_addbuf() to talloc 2022-12-14 04:32:34 +00:00
util_strlist_v3.c param: Fix str_list_v3 to accept ; again 2016-02-11 19:19:55 +01:00
util_strlist.c lib: Use talloc_asprintf_addbuf() in str_list_join_shell() 2022-12-14 04:32:34 +00:00
util_strlist.h lib: Add str_list_add_printf() 2021-05-11 22:56:37 +00:00
util_tdb.c lib:util: Check return value of tdb_parse_record() 2021-12-15 19:32:30 +00:00
util_tdb.h lib: Remove unused tdb_traverse_delete_fn() 2021-04-19 18:18:31 +00:00
util.c lib/util: make use of tevent_cached_getpid() in performance critical code 2022-07-25 17:34:33 +00:00
util.h lib/util: add dump_data_diff*() helpers 2022-01-24 15:25:36 +00:00
wscript lib/util: Prefer backtrace_symbols() for internal backtraces 2022-06-09 22:49:29 +00:00
wscript_build util: add stable sort functions 2022-12-01 22:56:39 +00:00
wscript_configure lib/util: Prefer backtrace_symbols() for internal backtraces 2022-06-09 22:49:29 +00:00

This directory contains libutil (until we can think of a better name)

The idea is that this library contains simple but useful data structures 
and support functions that are generally useful; not just for Samba but for 
other projects as well. Functions here should not depend on any external 
libraries, just on libc (perhaps partially provided by libreplace).