Re: Bug report in test suite

Bernhard Voelker <[email protected]>
Newsgroups gmane.comp.gnu.findutils.bugs
Message-ID <[email protected]>
On 11/19/21 01:03, Lahfa Samy wrote:
> FAIL: tests/find/execdir-fd-leak.sh

The error message in the logfile is quite clear:

   FAIL: tests/find/execdir-fd-leak
   ================================

   find: The current directory is included in the PATH environment variable, which is insecure in combination \
   with the -execdir action of find.  Please remove the current directory from your $PATH (that is, remove ".", \
   doubled colons, or leading or trailing colons)
   Option -execdir of find leaks file descriptors
   oldfind: The current directory is included in the PATH environment variable, which is insecure in combination \
   with the -execdir action of find.  Please remove the current directory from your $PATH (that is, remove ".", \
   doubled colons, or leading or trailing colons)
   Option -execdir of oldfind leaks file descriptors
   FAIL tests/find/execdir-fd-leak.sh (exit status: 1)

I'm getting exactly the same when the PATH variable contains the current directory ".".
This is a security problem, and I've not seen this on any system in the last 15 years.

Still, the test suite should cater for and run in a sane environment.
This could be done in the test setup script 'tests/init.sh' which comes from gnulib,
as I think this is a useful thing for probably all projects.
Alternatively, the findutils test setup could do it.

Finally, I'm wondering about 2 other topics in the output you provided:

a) When I run `./configure && make && make check` with such a vulnerable PATH="$PATH:."
setting, then the check already fails earlier in 'find/testsuite/...' tests:

   FAIL: sv-bug-27563-execdir.old-O0, /home/berny/tmp/findutils-4.8.0/find/testsuite/../oldfind: The current directory is included in the PATH environment variable, which is insecure in combination 
with   the -execdir action of find.  Please remove the current directory from your $PATH (that is, remove ".", doubled colons, or leading or trailing colons)
   FAIL: sv-bug-27563-execdir.old-O0, standard output differs from the expected result:
   --- find.out	2021-11-19 19:13:09.265117146 +0000
   +++ cmp.out	2021-11-19 19:13:09.265117146 +0000
   @@ -0,0 +1 @@
   +./yyyy
   child process exited abnormally

b) There are several lines like the following:

 > make[1]: env: Permission denied

I can't imagine what would trigger this other than e.g. a strange cross-compilation environment.
Is there something special about your build?

Have a nice day,
Berny
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.