[Bug 5600] New: ash shell backtick never returns if sub-process closes std file descriptors

bugzilla at busybox.net bugzilla at busybox.net
Thu Oct 11 20:09:16 UTC 2012


https://bugs.busybox.net/show_bug.cgi?id=5600

           Summary: ash shell backtick never returns if sub-process closes
                    std file descriptors
           Product: Busybox
           Version: 1.19.x
          Platform: Other
        OS/Version: Linux
            Status: NEW
          Severity: minor
          Priority: P5
         Component: Other
        AssignedTo: unassigned at busybox.net
        ReportedBy: jimbo-busybox at edwardsclan.net
                CC: busybox-cvs at busybox.net
   Estimated Hours: 0.0


It seems there is some kind of a problem in the ash shells implementation of
back-tick (or variable execution).  If you try and start a process which closes
the stdout/stderr file-descriptors in the back-tick, then the back-tick
operation never returns, even though the sub-process has exited.  This was
originally report when udev was started as a daemon, for example:

echo "Running UDEV"
OUPUT=`udevd -d`
echo "Returned ${OUTPUT}"

would output:

Running UDEV
<hang forever>

I noticed back in 2003 there was a patch for a similar problem for the msh
shell in busybox.

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


More information about the busybox-cvs mailing list