diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2023-03-26 12:49:32 +0300 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2023-04-05 07:18:30 +0300 |
commit | 436b38fd89fe4324d2342084ef477a7a8809a001 (patch) | |
tree | 6684428b0f52868b0011ead5c36eadf10ce631cd /src/ipa/vimc/vimc.cpp | |
parent | 4cd9cb4a90550e0c45c85b0b00ca8a72ed13fdb4 (diff) |
libcamera: Open files with O_CLOEXEC
Files opened internally in libcamera without the O_CLOEXEC file will
remain open upon a call to one of the exec(3) functions. As exec()
doesn't destroy local or global objects, this can lead to various side
effects. Avoid this by opening file descriptors with O_CLOEXEC for all
internal files.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Umang Jain <umang.jain@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/ipa/vimc/vimc.cpp')
-rw-r--r-- | src/ipa/vimc/vimc.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ipa/vimc/vimc.cpp b/src/ipa/vimc/vimc.cpp index d5fabaf1..2c255778 100644 --- a/src/ipa/vimc/vimc.cpp +++ b/src/ipa/vimc/vimc.cpp @@ -168,7 +168,7 @@ void IPAVimc::initTrace() if (ret) return; - ret = ::open(ipa::vimc::VimcIPAFIFOPath.c_str(), O_WRONLY); + ret = ::open(ipa::vimc::VimcIPAFIFOPath.c_str(), O_WRONLY | O_CLOEXEC); if (ret < 0) { ret = errno; LOG(IPAVimc, Error) << "Failed to open vimc IPA test FIFO: " |