summaryrefslogtreecommitdiff
path: root/lib/fdleak.h
Commit message (Collapse)AuthorAgeFilesLines
* maint: update copyright year number rangesBernhard Voelker2023-01-011-1/+1
| | | | | | | | Run 'make update-copyright'. * lib/regexprops.c (copying): Update the year number manually. * tests/sample-test: Adjust to use the single most recent year. * All other files: Update copyright years via the above make run.
* maint: update copyright year number rangesBernhard Voelker2022-01-021-1/+1
| | | | | | | | | | Run 'make update-copyright'. * lib/regexprops.c (copying): Update the year number manually. The format of the copyright year number range in Texinfo files is "YEAR1--YEAR2" now, i.e., with 2x '-'. * tests/sample-test: Adjust to use the single most recent year. * All other files: Update copyright years via the above make run.
* maint: update copyright year number rangesBernhard Voelker2021-01-021-1/+1
| | | | | | | | | | Run 'make update-copyright'. * lib/regexprops.c (copying): Update the year number manually. The format of the copyright year number range in Texinfo files is "YEAR1--YEAR2" now, i.e., with 2x '-'. * tests/sample-test: Likewise, here to avoid starting a year number range. * All other files: Update copyright years via the above make run.
* maint: update copyright year number rangesBernhard Voelker2020-01-011-1/+1
| | | | | | | | Run 'make update-copyright'. * lib/regexprops.c (copying): Update the year number manually. * tests/sample-test: Likewise, here to avoid starting a year number range. * All other files: Update copyright years via the above make run.
* xargs: use GNU_FINDUTILS_FD_LEAK_CHECK as for findPavel Modilaynen2019-05-051-0/+3
| | | | | | | | | | | | | | | | | | | Utilize GNU_FINDUTILS_FD_LEAK_CHECK environment variable to enable/disable fd leak check for xargs the same way as for find. * find/defs.h: Remove prototype for fd_leak_check_is_enabled(). * find/util.c: Remove implementation of fd_leak_check_is_enabled(). * lib/fdleak.c: Add implementation of fd_leak_check_is_enabled(). * lib/fdleak.h: Add prototype for fd_leak_check_is_enabled(). * xargs/testsuite/config/unix.exp: Enable GNU_FINDUTILS_FD_LEAK_CHECK for all tests. * xargs/xargs.c: Execute complain_about_leaky_fds when fd_leak_check_is_enabled returns true. * NEWS (Improvements): Document support of GNU_FINDUTILS_FD_LEAK_CHECK by xargs. Copyright-paperwork-exempt: Yes
* maint: update copyright year number rangesBernhard Voelker2019-01-041-1/+1
| | | | | | | Run 'make update-copyright'. * lib/regexprops.c (copying): Update the year number manually. * All other files: Update copyright years via the above make run.
* maint: adjust preprocessor indentation via cppiBernhard Voelker2018-12-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Run 'cppi -a' for all *.[ch] files, and add a syntax-check rule for it. * cfg.mk (sc_preprocessor_indentation): Add rule. * find/defs.h: Run 'cppi -a' on this file. * find/fstype.c: Likewise. * find/oldfind.c: Likewise. * find/parser.c: Likewise. * find/pred.c: Likewise. * find/print.h: Likewise. * find/sharefile.h: Likewise. * gnulib-local/lib/gcc-function-attributes.h: Likewise. * lib/bugreports.h: Likewise. * lib/buildcmd.c: Likewise. * lib/buildcmd.h: Likewise. * lib/extendbuf.h: Likewise. * lib/fdleak.h: Likewise. * lib/findutils-version.h: Likewise. * lib/listfile.c: Likewise. * lib/printquoted.h: Likewise. * lib/regextype.h: Likewise. * lib/safe-atoi.h: Likewise. * lib/splitstring.h: Likewise. * lib/system.h: Likewise. * locate/locatedb.h: Likewise. * xargs/xargs.c: Likewise.
* maint: prevent multiple inclusion of header filesBernhard Voelker2018-03-141-0/+4
| | | | | | | | | * find/print.h: Add #ifndef / #define / #endif guard to prevent multiple inclusion of this header file. * lib/fdleak.h: Likewise. * lib/findutils-version.h: Likewise. * lib/regextype.h: Likewise. * lib/splitstring.h: Likewise.
* maint: update copyright year number rangesBernhard Voelker2018-01-011-1/+1
| | | | | | | Run 'make update-copyright'. * lib/regexprops.c (copying): Update the year number manually. * All other files: Update copyright years via the above make run.
* all: prefer https:// URLs where possibleBernhard Voelker2017-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change from http:// to https:// URLs for the following: www.gnu.org, gnu.org, savannah.gnu.org, git.sv.gnu.org, lists.gnu.org, translationproject.org, cve.mitre.org, cwe.mitre.org, xkcd.com, standards.ieee.org, and gcc.gnu.org. * COPYING: Do the above replacement. * ChangeLog-2013: Likewise. * NEWS: Likewise. * README: Likewise. * README-hacking: Likewise. * build-aux/Makefile.am: Likewise. * build-aux/check-testfiles.sh: Likewise. * build-aux/gen-changelog.sh: Likewise. * build-aux/man-lint.sh: Likewise. * build-aux/src-sniff.py: Likewise. * cfg.mk: Likewise. * configure.ac: Likewise. * doc/Makefile.am: Likewise. * doc/find-maint.texi: Likewise. * doc/find.texi: Likewise. * find/defs.h: Likewise. * find/exec.c: Likewise. * find/find.1: Likewise. * find/finddata.c: Likewise. * find/fstype.c: Likewise. * find/ftsfind.c: Likewise. * find/oldfind.c: Likewise. * find/parser.c: Likewise. * find/pred.c: Likewise. * find/print.c: Likewise. * find/print.h: Likewise. * find/sharefile.c: Likewise. * find/sharefile.h: Likewise. * find/testsuite/Makefile.am: Likewise. * find/testsuite/binary_locations.sh: Likewise. * find/testsuite/checklists.py: Likewise. * find/testsuite/config/unix.exp: Likewise. * find/testsuite/find.gnu/name-period.exp: Likewise. * find/testsuite/find.posix/depth1.exp: Likewise. * find/testsuite/sv-34079.sh: Likewise. * find/testsuite/sv-34976-execdir-fd-leak.sh: Likewise. * find/testsuite/sv-48030-exec-plus-bug.sh: Likewise. * find/testsuite/sv-48180-refuse-noop.sh: Likewise. * find/testsuite/sv-52220.sh: Likewise. * find/testsuite/sv-bug-32043.sh: Likewise. * find/testsuite/test_escape_c.sh: Likewise. * find/testsuite/test_escapechars.sh: Likewise. * find/testsuite/test_inode.sh: Likewise. * find/testsuite/test_type-list.sh: Likewise. * find/tree.c: Likewise. * find/util.c: Likewise. * gnulib-local/lib/gcc-function-attributes.h: Likewise. * lib/bugreports.c: Likewise. * lib/bugreports.h: Likewise. * lib/buildcmd.c: Likewise. * lib/buildcmd.h: Likewise. * lib/check-regexprops.sh: Likewise. * lib/dircallback.c: Likewise. * lib/dircallback.h: Likewise. * lib/extendbuf.c: Likewise. * lib/extendbuf.h: Likewise. * lib/fdleak.c: Likewise. * lib/fdleak.h: Likewise. * lib/findutils-version.c: Likewise. * lib/findutils-version.h: Likewise. * lib/listfile.c: Likewise. * lib/listfile.h: Likewise. * lib/printquoted.c: Likewise. * lib/printquoted.h: Likewise. * lib/qmark.c: Likewise. * lib/regexprops.c: Likewise. * lib/regextype.c: Likewise. * lib/regextype.h: Likewise. * lib/safe-atoi.c: Likewise. * lib/safe-atoi.h: Likewise. * lib/splitstring.c: Likewise. * lib/splitstring.h: Likewise. * lib/test_splitstring.c: Likewise. * lib/unused-result.h: Likewise. * locate/frcode.c: Likewise. * locate/locate.1: Likewise. * locate/locate.c: Likewise. * locate/locatedb.5: Likewise. * locate/locatedb.h: Likewise. * locate/testsuite/Makefile.am: Likewise. * locate/testsuite/config/unix.exp: Likewise. * locate/updatedb.1: Likewise. * locate/updatedb.sh: Likewise. * locate/word_io.c: Likewise. * po/fetch-po-files: Likewise. * xargs/testsuite/Makefile.am: Likewise. * xargs/testsuite/config/unix.exp: Likewise. * xargs/xargs.1: Likewise. * xargs/xargs.c: Likewise.
* maint: update copyright year number rangesBernhard Voelker2017-10-231-1/+1
| | | | | | | | | | | | | | | | | | Better late than never: run 'make update-copyright'. * cfg.mk (update-copyright-env): Change UPDATE_COPYRIGHT_USE_INTERVALS from 1 to 2 to get a minimal containing range of years; also set UPDATE_COPYRIGHT_MAX_LINE_LENGTH to 79 characters. * .x-update-copyright: Add an entry for bootstrap which comes from gnulib. * lib/qmark.c: While at it, fix a typo: s/courutils/coreutils/. * lib/regexprops.c (copying): Update the text so that the copyright years match the result of "make update-copyright". * po/fi.po: Change copyright header so that "make update-copyright" can pick it up: s/©/(C)/ * po/it.po: Likewise. * po/vi.po: Likewise. * All other files: Update copyright years via the above make run.
* maint: update copyright years.James Youngman2016-01-031-1/+1
| | | | | | | | | | | | * lib/regexprops.c (copying): Update the text so that the copyright years (and the line breaks) match the result of "make update-copyright". * doc/regexprops.texi: Tweak copyright years to match the result of "make update-copyright". * All other files: update copyright years if the file has a copyright statement. * .x-update-copyright: new file, a list of files to exclude from automated copyright updates.
* Update the copyright year in C source files.James Youngman2011-06-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * find/defs.h: Update copyright year. * find/find.c: Update copyright year. * find/finddata.c: Update copyright year. * find/ftsfind.c: Update copyright year. * find/parser.c: Update copyright year. * find/pred.c: Update copyright year. * find/sharefile.c: Update copyright year. * find/sharefile.h: Update copyright year. * find/tree.c: Update copyright year. * find/util.c: Update copyright year. * lib/buildcmd.c: Update copyright year. * lib/buildcmd.h: Update copyright year. * lib/dircallback.c: Update copyright year. * lib/dircallback.h: Update copyright year. * lib/extendbuf.c: Update copyright year. * lib/extendbuf.h: Update copyright year. * lib/fdleak.c: Update copyright year. * lib/fdleak.h: Update copyright year. * lib/findutils-version.c: Update copyright year. * lib/findutils-version.h: Update copyright year. * lib/forcefindlib.c: Update copyright year. * lib/listfile.c: Update copyright year. * lib/listfile.h: Update copyright year. * lib/nextelem.c: Update copyright year. * lib/nextelem.h: Update copyright year. * lib/printquoted.c: Update copyright year. * lib/printquoted.h: Update copyright year. * lib/qmark.c: Update copyright year. * lib/regexprops.c: Update copyright year. (copying): Update copyright year in the output file, too. * lib/regextype.c: Update copyright year. * lib/regextype.h: Update copyright year. * lib/safe-atoi.c: Update copyright year. * lib/safe-atoi.h: Update copyright year. * lib/savedirinfo.c: Update copyright year. * lib/savedirinfo.h: Update copyright year. * lib/unused-result.h: Update copyright year. * lib/waitpid.c: Update copyright year. * locate/bigram.c: Update copyright year. * locate/code.c: Update copyright year. * locate/frcode.c: Update copyright year. * locate/locate.c: Update copyright year. * locate/locatedb.h: Update copyright year. * locate/word_io.c: Update copyright year. * xargs/xargs.c: Update copyright year.
* Remove trailing blank lines.James Youngman2010-04-111-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * .x-sc_prohibit_empty_lines_at_EOF: Add list of exceptions to the no-blank-lines-at-EOF syntax check. * doc/regexprops.texi: Remove empty lines at the end of the file. * find/finddata.c: Likewise. * find/fstype.c: Likewise. * find/testsuite/excuses.txt: Likewise. * find/testsuite/find.gnu/access.exp: Likewise. * find/testsuite/find.gnu/exec-one-rtn-fail.exp: Likewise. * find/testsuite/find.gnu/posix-perminvalid.exp: Likewise. * find/testsuite/find.gnu/samefile-missing.exp: Likewise. * find/testsuite/find.gnu/samefile-p-brokenlink.exp: Likewise. * find/testsuite/find.gnu/sv-bug-17490.exp: Likewise. * find/testsuite/find.gnu/sv-bug-18222.exp: Likewise. * find/testsuite/find.posix/bracket-depth.exp: Likewise. * find/testsuite/find.posix/empty-parens.exp: Likewise. * find/testsuite/find.posix/files-not-expressions1.exp: Likewise. * find/testsuite/find.posix/files-not-expressions2.exp: Likewise. * find/testsuite/find.posix/files-not-expressions3.exp: Likewise. * find/testsuite/find.posix/group-empty.exp: Likewise. * find/testsuite/find.posix/user-empty.exp: Likewise. * find/testsuite/find.posix/user-missing.exp: Likewise. * lib/extendbuf.c: Likewise. * lib/fdleak.c: Likewise. * lib/fdleak.h: Likewise. * lib/findutils-version.h: Likewise. * lib/gnulib-version.h: Likewise. * lib/printquoted.c: Likewise. * lib/regextype.c: Likewise. * lib/safe-atoi.c: Likewise. * locate/testsuite/config/unix.exp: Likewise. * locate/testsuite/locate.gnu/exists1.exp: Likewise. * locate/testsuite/locate.gnu/exists2.exp: Likewise. * locate/testsuite/locate.gnu/exists3.exp: Likewise. * locate/testsuite/locate.gnu/ignore_case1.exp: Likewise. * locate/testsuite/locate.gnu/ignore_case2.exp: Likewise. * locate/testsuite/locate.gnu/ignore_case3.exp: Likewise. * locate/testsuite/locate.gnu/notexists1.exp: Likewise. * locate/testsuite/locate.gnu/notexists2.exp: Likewise. * locate/testsuite/locate.gnu/notexists3.exp: Likewise. * locate/testsuite/locate.gnu/sv-bug-14535.exp: Likewise. * m4/Makefile.am: Likewise. * m4/nullsort.m4: Likewise. * xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp: Likewise. * xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp: Likewise. Signed-off-by: James Youngman <jay@gnu.org>
* Correct the format of copyright statements, and add 2010.James Youngman2010-04-031-1/+1
| | | | | | | | | | | | | | * lib/fdleak.h: Correct the format of the copyright statement. * po/vi.po: Likewise. * lib/safe-atoi.h: Likewise. * locate/locate.c: Likewise. * po/ca.po: Likewise. * po/gl.po: Likewise. * po/fi.po: Likewise. * po/it.po: Likewise. * po/findutils.pot: Fill in the boilerplate in the header. Signed-off-by: James Youngman <jay@gnu.org>
* Support O_CREAT in open_cloexec.James Youngman2010-03-301-1/+1
| | | | | | | | | | | | * lib/fdleak.c: Include <stdarg.h> and "cloexec.h". (open_cloexec): Support O_CREAT. Use O_CLOEXEC if it is available. (O_CLOEXEC): #define to 0 if not already #defined. * import-gnulib.config (modules): Import modules open (for PROMOTED_MODE_T) and stdbool (for 'true'). * lib/fdleak.h: Update prototype of open_cloexec to allow mode to be passed. Signed-off-by: James Youngman <jay@gnu.org>
* Fix file descriptor leaks.James Youngman2010-03-301-0/+23
* import-gnulib.config (gnulib_version): Update to more recent version of gnulib. Import the cloexec module too. * lib/fdleak.c: New file; a module for detecting file descriptor leaks. Also define an open_cloexec() function. * lib/fdleak.h: Declare the global functions defined in fdleak.c. * lib/Makefile.am (libfind_a_SOURCES): Add fdleak.c and fdleak.h. * find/find.c (main): Call remember_non_cloexec_fds in order to detect file descriptor leaks. (main): set FD_CLOEXEC on starting_desc. (safely_chdir_lstat): Likewise for dotfd. (safely_chdir_nofollow): Likewise for fd. * find/ftsfind.c (inside_dir): set FD_CLOEXEC on curr_fd. (main): Call remember_non_cloexec_fds in order to detect file descriptor leaks. (main): set FD_CLOEXEC on starting_desc. * find/pred.c (launch): before we exec the child, call complain_about_leaky_fds in order to complain about non-FD_CLOEXEC file descriptors that weren't open when the program was run. * find/sharefile.c (sharefile_fopen): Set FD_CLOEXEC on the files we open. * gnulib-local/lib/save-cwd.c.diff: Patch gnulib to set FD_CLOEXEC on the file descriptors opened by save_cwd. * gnulib-local/modules/save-cwd.diff: Hence the save-cwd module depends on the cloexec module. * import-gnulib.sh (run_gnulib_tool): Pass the --local-dir option in order to apply these patches. Signed-off-by: James Youngman <jay@gnu.org>