A POSIX compliant fclose the leak patch is attached. On Tue, Nov 10, 2015 at 8:29 AM, Eric Blake <ebl...@redhat.com> wrote:
> On 11/06/2015 10:31 PM, Kyle Sallee wrote: > > By xargs a file descriptor is leaked. > > Within find; the omission might or might not exist. > > A patch is attached. > > > > > > findutils-4.4.2.o_cloexec.patch > > > > > > diff -r -U2 findutils-4.4.2/xargs/xargs.c findutils-4.4.2/xargs/xargs.c > > --- findutils-4.4.2/xargs/xargs.c 0000-00-00 00:00:00.000000000 -0000 > > +++ findutils-4.4.2/xargs/xargs.c 0000-00-00 00:00:00.000000000 -0000 > > @@ -647,5 +647,5 @@ > > { > > keep_stdin = 1; /* see prep_child_for_exec() */ > > - input_stream = fopen (input_file, "r"); > > + input_stream = fopen (input_file, "re"); > > fopen(,"re") is not (yet) POSIX; we'd have to guarantee that it is first > supported by gnulib before we could rely on it. But the idea of marking > fds close-on-exec in xargs so that they are not leaked to the child > process makes sense. > > -- > Eric Blake eblake redhat com +1-919-301-3266 > Libvirt virtualization library http://libvirt.org > >
findutils-4.4.2-fclose_leak.patch
Description: Binary data