diff options
author | Allen Webb <allenwebb@google.com> | 2022-03-21 18:29:00 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-03-21 18:29:00 +0000 |
commit | 657259d47af9baecf0ae716bda915f744ca01b9d (patch) | |
tree | f74ab1d48e2f18d65348c06014c4fa138e1857ab | |
parent | a2b4eac2dbd7d37a09f33c846fd06cd461787de4 (diff) | |
parent | 0fa8d7014b0dd9dc2bed8c01837a263b404a72ee (diff) | |
download | minijail-657259d47af9baecf0ae716bda915f744ca01b9d.tar.gz |
libminijail: Set the controlling tty if appropriate. am: f486e262fa am: c4dbc7cde8 am: e564e85bec am: 0fa8d7014b
Original change: https://android-review.googlesource.com/c/platform/external/minijail/+/2032023
Change-Id: I901971fc6057645f2d83800c2b92f7722f110e9b
-rw-r--r-- | libminijail.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/libminijail.c b/libminijail.c index ea59404..aab1294 100644 --- a/libminijail.c +++ b/libminijail.c @@ -2889,6 +2889,12 @@ static void setup_child_std_fds(struct minijail *j, if (setsid() < 0) { pdie("setsid() failed"); } + + if (isatty(STDIN_FILENO)) { + if (ioctl(STDIN_FILENO, TIOCSCTTY, 0) != 0) { + pwarn("failed to set controlling terminal"); + } + } } } @@ -2943,12 +2949,12 @@ int API minijail_run_env(struct minijail *j, const char *filename, char *const argv[], char *const envp[]) { struct minijail_run_config config = { - .filename = filename, - .elf_fd = -1, - .argv = argv, - .envp = envp, - .use_preload = true, - .exec_in_child = true, + .filename = filename, + .elf_fd = -1, + .argv = argv, + .envp = envp, + .use_preload = true, + .exec_in_child = true, }; return minijail_run_config_internal(j, &config); } |