HomeFreeBSD

uefisign: fix handling of errors from child proc

Description

uefisign: fix handling of errors from child proc

Close the unused pipe file descriptors so the parent will notice if
the child exits prematurely. Previously, the parent would block
forever on a read from the pipe.

$ uefisign -c foo.cert -k foo.key -o loader.efi loader.efi.unsigned
uefisign: section points inside the headers
load: 0.06  cmd: uefisign 4502 [piperd] 7.25r 0.00u 0.00s 0% 5968k
... _sleep+0x1be pipe_read+0x3d6 kern_readv+0x8c sys_read+0x83 ...

Reviewed by: trasz
MFC after: 1 week
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D29605

(cherry picked from commit 9e6158d274829249322efb3767e6ac2e690cc4a9)

Details

Provenance
vangyzenAuthored on Apr 6 2021, 2:36 PM
Reviewer
trasz
Differential Revision
D29605: uefisign: fix handling of errors from child proc
Parents
rGd30946f4ad5b: cxgbe(4): Fix build warning for LINT-NOIP.
Branches
Unknown
Tags
Unknown