1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
samba-mirror/lib/util
Gary Lockyer 563bbb9c24 util_runcmd: Free the fde in event handler.
Free the fde in the event handler to prevent the event triggering again
While not strictly necessary in this case, this code serves as an
example of the usage of tfork.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=13037

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>

Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Sat Sep 16 23:50:27 CEST 2017 on sn-devel-144
2017-09-16 23:50:27 +02:00
..
charset charset: fix str[n]casecmp_m() by comparing lower case values 2017-09-15 02:23:29 +02:00
tests tests util/tfork: Tests for status and event fd 2017-09-16 19:53:22 +02:00
access.c lib: Avoid includes.h in access.c 2016-11-16 22:26:13 +01:00
access.h lib: util: Add allow_access_nolog(). 2016-11-16 12:41:09 +01:00
asn1.c asn1: make readContextSimple() add a NUL byte 2016-03-09 10:32:16 +01:00
asn1.h ASN1: use a talloc context in read_contextSimple 2016-03-09 10:32:16 +01:00
attr.h util/attr.h: use HAVE___ATTRIBUTE__, not __GNUC__ comparisons 2016-03-24 15:13:15 +01: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 smbd: add missing newline to debug message in daemon_status() 2017-09-08 06:26:52 +02:00
become_daemon.h util: Add become_daemon.h 2017-08-17 08:00:23 +02:00
binsearch.h binsearch: make BINARY_ARRAY_SEARCH_GTE compare against a pointer 2017-02-09 03:17:15 +01:00
bitmap.c lib: Avoid includes.h in bitmap.c 2016-12-02 09:36:08 +01:00
bitmap.h lib/util: Make "struct bitmap" abstract 2012-11-07 15:32:24 +01:00
blocking.c lib: Trim blocking.c 2015-07-01 17:12:48 +02:00
blocking.h lib/util: Add a generic definition for set_close_on_exec 2016-06-08 10:33:19 +02:00
byteorder.h Byte order reversal shouldn't assume size_t is 64 bit. 2015-06-24 06:04:10 +02:00
charset_compat.h lib/util: Use charset_compat.h if SAMBA_UTIL_CORE_ONLY 2014-10-04 00:11:21 +02:00
close_low_fd.c lib: Fix CID 1273073 Assign instead of compare 2015-03-03 17:34:39 +01:00
close_low_fd.h lib: Make close_low_fd() independently linkable 2014-08-01 22:11:46 +02:00
data_blob.c lib: Fix signed/unsigned comparisons 2014-12-05 18:37:10 +01:00
data_blob.h lib: Move data_blob_list_item to source4 2016-02-23 22:03:16 +01:00
debug_s3.c lib: Add lib/util/server_id.h 2017-01-22 18:30:11 +01:00
debug_s3.h Fix warning messages on Freebsd 4.6.2. 2011-06-02 10:10:39 -07:00
debug.c debug: Add new debug class "drs_repl" for DRS replication processing 2017-09-07 06:56:27 +02:00
debug.h debug: Add new debug class "drs_repl" for DRS replication processing 2017-09-07 06:56:27 +02:00
dlinklist.h Revert "lib:dlinklist: avoid -Wtautological-compare errors with gcc6" 2016-07-15 00:54:12 +02:00
Doxyfile
dprintf.c lib/util: Fix format-nonliteral warning 2016-08-24 01:33:50 +02:00
fault.c lib/util: Clean up includes for fault.c 2014-10-04 00:11:21 +02:00
fault.h lib/util: Include DEBUG macro in internal header files before samba_util.h 2015-03-11 18:47:22 +01:00
fsusage.c build: do not use HAVE_EXPLICIT_LARGEFILE_SUPPORT and *64() fucntions any more 2012-04-05 02:39:08 +02:00
genrand_util.c lib/util: add generate_random_machine_password() function 2017-02-21 16:09:21 +01:00
genrand.c Rely on /dev/urandom 2015-10-13 04:25:38 +02:00
genrand.h Rely on /dev/urandom 2015-10-13 04:25:38 +02:00
getpass.c getpass: Don't fail if stdin is not a tty 2013-04-05 07:34:37 +02:00
gpfswrap.c gpfswrap: Add wrapper for gpfs_set_winattrs 2016-04-01 19:28:23 +02:00
gpfswrap.h gpfswrap: Add wrapper for gpfs_set_winattrs 2016-04-01 19:28:23 +02:00
idtree_random.c lib/util: Move idr_get_new_random() to new source file idtree_random.c 2014-09-19 18:11:11 +02:00
idtree_random.h lib/util: Move idr_get_new_random() to new source file idtree_random.c 2014-09-19 18:11:11 +02:00
idtree.c lib/util/idtree.c: fix UB by using uint in left-shift 2016-02-26 19:27:08 +01:00
idtree.h lib/util: Move idr_get_new_random() to new source file idtree_random.c 2014-09-19 18:11:11 +02:00
iov_buf.c lib/util: add and use iov_concat 2017-04-18 22:54:15 +02:00
iov_buf.h lib/util: add and use iov_concat 2017-04-18 22:54:15 +02:00
mainpage.dox
memcache.c s3: VFS: Change SMB_VFS_GETWD to return struct smb_filename * instead of char *. 2017-07-01 03:07:11 +02:00
memcache.h lib: memcache.h needs some includes 2016-11-16 18:32:28 +01:00
memory.h
modules.c lib: Give util_paths.c its own header 2017-06-24 01:21:10 +02:00
ms_fnmatch.c lib/util: Avoid a talloc in ms_fnmatch_protocol 2017-01-22 18:30:12 +01:00
msghdr.c lib: Fix illegal use of 0-length arrays 2017-06-06 18:36:06 +02: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: Add documentation for PID file handling 2017-08-17 19:45:32 +02:00
pidfile.h util: Add documentation for PID file handling 2017-08-17 19:45:32 +02:00
rbtree.c lib: Avoid an includes.h 2017-03-28 17:45:18 +02:00
rbtree.h
README
rfc1738.c lib: Avoid an includes.h 2017-03-28 17:45:18 +02:00
safe_string.h
samba_modules.h lib:util: Make probing of modules more secure 2017-06-06 18:36:07 +02:00
samba_util.h util: Add become_daemon.h 2017-08-17 08:00:23 +02:00
samba-util.pc.in pkgconfig: Do not hardcode library version numbers in pc files. 2013-08-22 20:48:44 +02:00
select.c lib: Avoid an includes.h 2017-03-20 12:20:08 +01:00
select.h lib/util: Remove sys_poll as it is no longer needed 2012-02-16 15:49:21 -08:00
server_id_db.c server_id_db: Protect against non-0-terminated data records 2017-03-28 09:23:11 +02:00
server_id_db.h lib: Add server_id_db_pid() 2015-07-07 23:51:23 +02:00
server_id.c lib: Avoid an includes.h 2017-01-22 18:30:11 +01:00
server_id.h lib: Add lib/util/server_id.h 2017-01-22 18:30:11 +01:00
setid.c lib: Add missing include for unistd.h in setid. 2014-04-17 14:56:06 +02:00
setid.h Replace all uses of setXX[ug]id() and setgroups with samba_setXX[ug]id() calls. 2012-06-28 17:15:16 -07:00
signal.c lib/util: Clean up includes for signal.c 2014-10-04 00:11:21 +02:00
signal.h lib/util: Clean up includes for signal.c 2014-10-04 00:11:21 +02:00
smb_threads_internal.h
smb_threads.c
smb_threads.h
string_wrappers.h s3: smbd: Change the function signature of srvstr_push() from returning a length to returning an NTSTATUS with a length param. 2014-09-16 01:56:54 +02:00
strv_util.c lib/util: Add strv_util.[ch] containing new function strv_split() 2016-03-01 05:43:19 +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 strv.c: add strv_to_env for use with execle, etc. 2016-10-14 01:44:02 +02:00
strv.h strv.c: add strv_to_env for use with execle, etc. 2016-10-14 01:44:02 +02:00
substitute.c lib/util: Use charset_compat.h if SAMBA_UTIL_CORE_ONLY 2014-10-04 00:11:21 +02:00
substitute.h lib/util: Clean up includes for substitute.c 2014-10-04 00:11:21 +02:00
sys_rw_data.c lib: Move sys_rw* to lib/util 2015-10-13 01:23:07 +02:00
sys_rw_data.h lib: Move sys_rw* to lib/util 2015-10-13 01:23:07 +02:00
sys_rw.c lib: add sys_write_v - void variant of sys_write 2016-05-13 00:16:15 +02:00
sys_rw.h lib: add sys_write_v - void variant of sys_write 2016-05-13 00:16:15 +02:00
system.c lib/util: Remove obsolete sys_getpid() and sys_fork(). 2012-03-24 21:55:40 +01:00
talloc_report.c lib/util: Fix format strings and argument data types 2016-08-24 05:32:15 +02:00
talloc_report.h lib: Add talloc_report_str() 2015-02-13 23:32:07 +01:00
talloc_stack.c talloc_stack: abort in developer me if no stackframe on talloc_tos() 2012-07-18 15:07:27 +09:30
talloc_stack.h util: Update GPL header of talloc_stack.h 2016-02-12 09:01:14 +01:00
tevent_debug.c tevent: add and use debug class for tevent 2015-07-01 23:04:00 +02:00
tevent_ntstatus.c tevent: Add tevent_received to tevent_req_simple_recv_ntstatus 2013-08-12 13:59:53 -07:00
tevent_ntstatus.h lib/util: move tevent_req_poll_ntstatus() to tevent_ntstatus.c 2012-05-14 15:12:34 +02:00
tevent_unix.c lib: Add tevent_req_poll_unix 2015-07-07 23:51:23 +02:00
tevent_unix.h lib: Add tevent_req_poll_unix 2015-07-07 23:51:23 +02:00
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 lib: add tevent_req_poll_werror 2012-05-30 00:37:56 +02:00
tfork.c lib/util: only close the event_fd in tfork if the caller didn't call tfork_event_fd() 2017-09-16 19:53:23 +02:00
tfork.h lib/util: only close the event_fd in tfork if the caller didn't call tfork_event_fd() 2017-09-16 19:53:23 +02: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 libbreplace: compatibility fix for AIX 2017-06-13 09:11:56 +02:00
time.h lib/util: Clean up includes for time.[ch] 2014-10-04 00:11:20 +02: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/util: add pm_process_with_flags to allow parsing ini files with empty values 2017-01-06 12:28:19 +01:00
tiniparser.h Add tiniparser - tiny version of iniparser that only implements what Samba uses. 2014-08-14 21:27:13 +02: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: Add missing include for unistd.h in unix_privs. 2014-04-17 14:56:06 +02:00
util_file.c lib: Add fgets_slash 2016-12-11 11:17:23 +01:00
util_id.c Fix signed/unsigned comparisons 2014-12-07 00:12:07 +01:00
util_ldb.c
util_ldb.h lib/util/util_ldb.h: fix licence/copyright 2011-06-10 15:11:26 +02:00
util_net.c util: use SCOPE_DELIMITER for the IPv6 scope delimiter 2016-12-09 20:45:15 +01:00
util_net.h lib/util_net: add support for .ipv6-literal.net 2016-03-10 06:52:26 +01:00
util_paths.c lib: Give util_paths.c its own header 2017-06-24 01:21:10 +02:00
util_paths.h lib: Give util_paths.c its own header 2017-06-24 01:21:10 +02:00
util_process.c lib: Fix prctl detection for prctl_set_comment 2015-09-24 08:00:16 +02:00
util_process.h lib: Add prctl_set_comment to utils. 2013-03-05 23:29:46 +01:00
util_pw.c lib: Avoid an includes.h 2017-03-28 17:45:19 +02:00
util_pw.h lib/util: Remove dummy wrapper for getgrgid(). 2012-03-24 15:26:36 +01:00
util_runcmd.c util_runcmd: Free the fde in event handler. 2017-09-16 23:50:27 +02:00
util_runcmd.h lib/util: make use of tfork in samba_runcmd_send() 2017-07-03 19:59:07 +02:00
util_str_common.c Add a comment regarding strwicmp only being an ASCII string compare 2014-05-07 19:49:17 +02: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.c util: Add memcmp_const_time() 2016-04-19 09:37:14 +02: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: Make util_strlist.c standalone with its own header file 2016-02-05 09:00:20 +01: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: Avoid an includes.h 2017-03-28 17:45:19 +02:00
util_tdb.h lib: util_tdb.h needs tdb.h 2017-09-16 08:36:16 +02:00
util.c lib: Simplify smb_nanosleep 2017-03-20 16:11:15 +01:00
util.h Add a new header file for functions in lib/util/util.c. 2016-01-13 04:43:23 +01:00
wscript configure: add --with-gpfs option for selecting directory with gpfs headers 2015-07-29 10:33:29 +02:00
wscript_build util: Move become_daemon.c to samba-util-core 2017-08-17 08:00:23 +02:00
wscript_configure systemd: fix detection of libsystemd 2017-05-02 13:05:43 +02: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).