RFR(xs): 8224181: On child process spawn, child may write to random file descriptor instead of the fail pipe

Roger Riggs Roger.Riggs at oracle.com
Tue Jun 4 15:12:18 UTC 2019


H Thomas,

Looks ok.

Roger


On 06/04/2019 09:23 AM, Thomas Stüfe wrote:
> Hi all,
>
> may I please have reviews for this small fix:
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8224181
> cr:
> http://cr.openjdk.java.net/~stuefe/webrevs/8224181-on-child-process-spawn--child-may-write-to-wrong-file-descriptor-instead-of-the-fail-pipe/webrev.00/webrev/
>
> In sub process error handling code (WhyCantJonnyExec) child signals error
> to parent by writing an error code to the fail pipe. It does that using the
> hard wired fail pipe write-end fd (FAIL_FILENO, usually 4). But that only
> works as intended after the fail pipe write end has been successfully
> dup2'ed to FAIL_FILENO.
>
> If an error happens before that, error code will still be written to
> FAIL_FILENO, which may be an invalid file handle - which is almost benign -
> or refer to an unrelated file descriptor the child inherited and did not
> close yet - which is not good.
>
> Cheers, Thomas



More information about the core-libs-dev mailing list