curl/src
Daniel Stenberg 41e1b30ea1
tool_main: exit at once if out of file descriptors
If the main_checkfds function cannot create new file descriptors in an
attempt to detect of stdin, stdout or stderr are closed.

Also changed the check to use fcntl() to check if the descriptors are
open, which avoids superfluously calling pipe() if they all already are.

Follow-up to facfa19cdd

Reported-by: Trail of Bits

Closes #9663
2022-10-07 17:45:07 +02:00
..
.gitignore copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
CMakeLists.txt tool_hugehelp: make hugehelp a blank macro when disabled 2022-09-14 08:04:49 +02:00
curl.rc copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
Makefile.am windows: add .rc support to autotools builds 2022-09-18 12:05:35 +00:00
makefile.amiga copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
makefile.dj copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
Makefile.inc curl_ctype: convert to macros-only 2022-09-06 08:36:33 +02:00
Makefile.m32 Makefile.m32: fix regression with tool_hugehelp [ci skip] 2022-10-04 19:14:38 +00:00
mkhelp.pl tool_hugehelp: make hugehelp a blank macro when disabled 2022-09-14 08:04:49 +02:00
slist_wc.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
slist_wc.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_binmode.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_binmode.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_bname.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_bname.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_dbg.c trace: 0x7F character is non-printable 2022-07-17 10:10:35 +00:00
tool_cb_dbg.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_hdr.c tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_cb_hdr.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_prg.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_prg.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_rea.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_rea.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_see.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_see.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cb_wrt.c tool_cfgable: make 'synthetic_error' a plain bool 2022-07-23 13:39:20 +02:00
tool_cb_wrt.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_cfgable.c setopt: add CURLOPT_PROTOCOLS_STR and CURLOPT_REDIR_PROTOCOLS_STR 2022-07-04 08:35:09 +02:00
tool_cfgable.h NPN: remove support for and use of 2022-09-05 07:39:02 +02:00
tool_dirhie.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_dirhie.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_doswin.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_doswin.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_easysrc.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_easysrc.h tool_operate: avoid a few #ifdefs for disabled-libcurl builds 2022-09-13 10:28:50 +02:00
tool_filetime.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_filetime.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_findfile.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_findfile.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_formparse.c curl_ctype: convert to macros-only 2022-09-06 08:36:33 +02:00
tool_formparse.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_getparam.c tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_getparam.h getparam: correctly clean args 2022-08-31 01:03:36 +02:00
tool_getpass.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_getpass.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_help.c tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_help.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_helpers.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_helpers.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_hugehelp.c.cvs copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_hugehelp.h tool_hugehelp: make hugehelp a blank macro when disabled 2022-09-14 08:04:49 +02:00
tool_libinfo.c tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_libinfo.h tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_listhelp.c lib: sanitize conditional exclusion around MIME 2022-09-29 10:51:04 +02:00
tool_main.c tool_main: exit at once if out of file descriptors 2022-10-07 17:45:07 +02:00
tool_main.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_msgs.c misc: ISSPACE() => ISBLANK() 2022-09-06 08:34:30 +02:00
tool_msgs.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_operate.c docs: spelling nits 2022-09-29 21:29:04 +00:00
tool_operate.h tool_operate: reduce errorbuffer allocs 2022-09-01 09:25:00 +02:00
tool_operhlp.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_operhlp.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_panykey.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_panykey.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_paramhlp.c tool: remove dead code 2022-09-23 13:55:52 +02:00
tool_paramhlp.h tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_parsecfg.c getparam: correctly clean args 2022-08-31 01:03:36 +02:00
tool_parsecfg.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_progress.c tool_progress: remove 'Qd' from the parallel progress bar 2022-08-31 15:58:15 +02:00
tool_progress.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_sdecls.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_setopt.c tool: reorganize function c_escape around a dynbuf 2022-10-06 09:03:33 +02:00
tool_setopt.h cli tool: do not use disabled protocols 2022-09-16 23:29:08 +02:00
tool_setup.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_sleep.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_sleep.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_strdup.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_strdup.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_urlglob.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_urlglob.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_util.c tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_util.h tool: remove protocol count limitation 2022-09-22 13:49:10 +02:00
tool_version.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_vms.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_vms.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_writeout_json.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_writeout_json.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_writeout.c tool_operate: reduce errorbuffer allocs 2022-09-01 09:25:00 +02:00
tool_writeout.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_xattr.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tool_xattr.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00