1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00
samba-mirror/lib/util
Douglas Bagnall ed9abf94b3 utils/asn1: avoid undefined behaviour warning
UBSAN does not like an int >= 1<<24 being shifted left.
We check the overflow in the very next line.

Credit to OSS-Fuzz.

REF: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=25436

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): Fri Sep 11 05:05:59 UTC 2020 on sn-devel-184
2020-09-11 05:05:59 +00:00
..
charset lib/util: remove extra safe_string.h file 2020-08-28 02:18:40 +00:00
tests lib/util: Move cleanup for unit test in teardown function 2020-08-24 03:10:09 +00:00
access.c lib: relicense smb_strtoul(l) under LGPLv3 2020-08-03 22:21:02 +00:00
access.h lib: util: Add allow_access_nolog(). 2016-11-16 12:41:09 +01:00
asn1.c utils/asn1: avoid undefined behaviour warning 2020-09-11 05:05:59 +00:00
asn1.h CVE-2020-10704 libcli ldap: Check search request lengths. 2020-05-04 04:40:10 +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 lib: Avoid includes.h in base64.c 2016-05-04 01:28:23 +02:00
base64.h lib: Give base64.c its own .h 2016-05-04 01:28:23 +02:00
become_daemon.c Send status to systemd on daemon start 2018-12-17 01:24:15 +01:00
become_daemon.h util: Add become_daemon.h 2017-08-17 08:00:23 +02: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
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: Use memset_s() in data_blob_clear() 2018-12-20 16:11:02 +01:00
data_blob.h lib: Move data_blob_list_item to source4 2016-02-23 22:03:16 +01:00
debug_s3.c smbdotconf: mark "log level" with substitution="1" 2019-11-27 10:25:35 +00:00
debug_s3.h
debug.c lib/debug: set the correct default backend loglevel to MAX_DEBUG_LEVEL 2020-07-02 13:25:29 +00:00
debug.h lib/util: set current_msg_{level,class} also during a DEBUGADD[C]() call 2019-05-28 07:16:25 +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/util: Fix format-nonliteral warning 2016-08-24 01:33:50 +02:00
fault.c lib/util/fault.c: Unify printing of the stack trace with the INTERNAL ERROR string 2020-02-27 05:09:44 +00:00
fault.h lib/util/fault.c: Unify printing of the stack trace with the INTERNAL ERROR string 2020-02-27 05:09:44 +00:00
fsusage.c
genrand_util.c lib/util: add generate_unique_u64() helper function 2020-07-08 09:42:39 +00:00
genrand.c lib:util: Fix documentation for random number functions 2019-08-14 15:07:24 +00:00
genrand.h lib:util: Fix documentation for random number functions 2019-08-14 15:07:24 +00:00
getpass.c
gpfswrap.c gpfswrap: Make pathname "const char *" in gpfswrap_quotactl() 2020-02-03 20:27:37 +00:00
gpfswrap.h gpfswrap: Make pathname "const char *" in gpfswrap_quotactl() 2020-02-03 20:27:37 +00:00
idtree_random.c
idtree_random.h
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/util: add and use iov_concat 2017-04-18 22:54:15 +02:00
mainpage.dox
memcache.c memcache: Properly track the size of talloc objects 2019-04-06 05:12:21 +00:00
memcache.h memcache: Add new cache type for dfree information 2018-05-25 22:52:12 +02:00
memory.h lib:util: Sync memory.h with replace.h 2019-04-30 23:18:26 +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/util: clang: Fix a dereference of a null pointer warning(s) 2019-06-11 12:10:17 +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/util: add pm_process_with_flags to allow parsing ini files with empty values 2017-01-06 12:28:19 +01:00
pidfile.c util: Fix signed/unsigned comparisons by casting 2019-07-01 08:00:29 +00:00
pidfile.h util: Add documentation for PID file handling 2017-08-17 19:45:32 +02: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 util/rfc1738: update preamble 2018-02-22 06:13:49 +01: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/util: add generate_unique_u64() helper function 2020-07-08 09:42:39 +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: Use server_id_cmp() in server_id_equal() 2019-09-17 22:49:36 +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
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
smb_threads.h lib: smb_threads: fix access before init bug 2018-07-04 21:07:09 +02: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: Allow parsing a strv from a non-talloc const buf 2017-11-29 16:59:16 +01:00
substitute.c util: Fix off-by-one error in message about overflow 2019-07-05 02:24:52 +00:00
substitute.h
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: util: Add sys_pwrite_full(). 2020-05-12 19:53:43 +00:00
sys_rw.h lib: util: Add sys_pwrite_full(). 2020-05-12 19:53:43 +00:00
system.c
talloc_keep_secret.c lib:util: Add support to keep talloc chunks secret 2019-04-03 06:48:21 +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 talloc_stack: Call talloc destructors while frame is still around 2018-06-23 04:56:44 +02: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: Improve process titles for the tfork waiter process 2020-02-27 03:42:35 +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: Standardize use of st_[acm]time ns 2020-08-15 08:51:09 +00:00
time.h lib/util: Standardize use of st_[acm]time ns 2020-08-15 08:51:09 +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
util_file.c lib/util: change file_save_mode() to use O_EXCL 2019-11-15 17:21:32 +00:00
util_id.c
util_ldb.c
util_ldb.h
util_net.c lib/util: remove extra safe_string.h file 2020-08-28 02:18:40 +00:00
util_net.h lib: Move get_socket_port() to its only consumer 2020-08-17 19:35:37 +00:00
util_paths.c s3: lib: Fix missing TALLOC_FREE in error code path. 2020-07-14 07:42:54 +00:00
util_paths.h lib:util: Add path_expand_tilde() 2020-05-15 13:18:38 +00:00
util_process.c lib/util: Make prctl_set_comment take a printf format string 2020-02-27 03:42:35 +00:00
util_process.h lib/util: Make prctl_set_comment take a printf format string 2020-02-27 03:42:35 +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/util: inline lib/util/util_runcmd.h again 2019-02-08 02:54:20 +01:00
util_str_common.c lib/util: add talloc_alpha_strcpy() 2020-02-06 10:17:42 +00:00
util_str_escape.c lib/util: Add functions to escape log lines but not break all non-ascii 2017-03-29 02:37:26 +02: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 util_str_hex: use array syntax in guid functions to document usage 2018-05-31 01:57:16 +02:00
util_str_hex.h util_str_hex: use array syntax in guid functions to document usage 2018-05-31 01:57:16 +02:00
util_str.c lib: relicense smb_strtoul(l) under LGPLv3 2020-08-03 22:21:02 +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 util: Fix signed/unsigned comparisons by declaring as size_t 2019-07-01 06:44:13 +00:00
util_strlist.h util: Make util_strlist.c standalone with its own header file 2016-02-05 09:00:20 +01:00
util_tdb.c lib/util: clang: Fix Value stored during its initialization is never read 2019-06-26 10:30:23 +00:00
util_tdb.h util_tdb: Make a few functions static 2017-11-13 23:54:46 +01:00
util.c util: Allow symlinks in directory_create_or_exist 2020-08-16 05:45:35 +00:00
util.h lib: relicense smb_strtoul(l) under LGPLv3 2020-08-03 22:21:02 +00:00
wscript lib: Use gpfs.h from third_party on Linux 2019-01-18 17:21:02 +01:00
wscript_build lib/util: do not make string_wrappers.h public 2020-08-28 00:56:34 +00:00
wscript_configure lib/util: use better linux os detection in gpfs configure 2020-01-28 18:05:34 +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).