Terminal+HackStudio: Fix leaking PTM fd to child processes

The pseudoterminal *master* fd is not supposed to be inherited,
so make sure to open it with O_CLOEXEC.
This commit is contained in:
Sergey Bugaev 2019-11-13 16:04:31 +03:00 committed by Andreas Kling
parent bf012ca10a
commit d3504b4f9b
Notes: sideshowbarker 2024-07-19 11:14:28 +09:00
2 changed files with 2 additions and 2 deletions

View file

@ -148,7 +148,7 @@ int main(int argc, char** argv)
if (chdir(get_current_user_home_path().characters()) < 0)
perror("chdir");
int ptm_fd = open("/dev/ptmx", O_RDWR);
int ptm_fd = open("/dev/ptmx", O_RDWR | O_CLOEXEC);
if (ptm_fd < 0) {
perror("open(ptmx)");
return 1;

View file

@ -24,7 +24,7 @@ void TerminalWrapper::run_command(const String& command)
return;
}
int ptm_fd = open("/dev/ptmx", O_RDWR);
int ptm_fd = open("/dev/ptmx", O_RDWR | O_CLOEXEC);
if (ptm_fd < 0) {
perror("open(ptmx)");
ASSERT_NOT_REACHED();