[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH for-4.19 v2] tools/xl: Open xldevd.log with O_CLOEXEC
On 21.06.2024 18:55, Anthony PERARD wrote: > On Fri, Jun 21, 2024 at 05:16:56PM +0100, Andrew Cooper wrote: >> `xl devd` has been observed leaking /var/log/xldevd.log into children. >> >> Note this is specifically safe; dup2() leaves O_CLOEXEC disabled on newfd, so >> after setting up stdout/stderr, it's only the logfile fd which will close on >> exec(). >> >> Link: https://github.com/QubesOS/qubes-issues/issues/8292 >> Reported-by: Demi Marie Obenour <demi@xxxxxxxxxxxxxxxxxxxxxx> >> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> >> --- >> CC: Anthony PERARD <anthony@xxxxxxxxxxxxxx> >> CC: Juergen Gross <jgross@xxxxxxxx> >> CC: Demi Marie Obenour <demi@xxxxxxxxxxxxxxxxxxxxxx> >> CC: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx> >> CC: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx> >> >> Also entirely speculative based on the QubesOS ticket. >> >> v2: >> * Extend the commit message to explain why stdout/stderr aren't closed by >> this change >> >> For 4.19. This bugfix was posted earlier, but fell between the cracks. >> --- >> tools/xl/xl_utils.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/tools/xl/xl_utils.c b/tools/xl/xl_utils.c >> index 17489d182954..060186db3a59 100644 >> --- a/tools/xl/xl_utils.c >> +++ b/tools/xl/xl_utils.c >> @@ -270,7 +270,7 @@ int do_daemonize(const char *name, const char *pidfile) >> exit(-1); >> } >> >> - CHK_SYSCALL(logfile = open(fullname, O_WRONLY|O_CREAT|O_APPEND, 0644)); >> + CHK_SYSCALL(logfile = open(fullname, O_WRONLY | O_CREAT | O_APPEND | >> O_CLOEXEC, 0644)); > > Everytime we use O_CLOEXEC, we add in the C file > #ifndef O_CLOEXEC > #define O_CLOEXEC 0 > #endif > we don't need to do that anymore? > Or I guess we'll see if someone complain when they try to build on an > ancien version of Linux. I'm pretty certain I'll run into that issue on one of my pretty old systems, but if the general view is that we don't care about such environments anymore, then so be it (and I'll take care of such issues locally). Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |