]> git.ipfire.org Git - pakfire.git/commitdiff
jail: Fix setting raw mode only on the correct side
authorMichael Tremer <michael.tremer@ipfire.org>
Sat, 16 Dec 2023 13:06:20 +0000 (13:06 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Sat, 16 Dec 2023 13:06:20 +0000 (13:06 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/jail.c

index ec3363de6303d2ec8b35243df644d8e187826864..7f67d080aefb62056a7457392b56093c5df51faf 100644 (file)
@@ -892,6 +892,17 @@ static int pakfire_jail_enable_raw_mode(struct pakfire_jail* jail,
        // Make it RAW
        cfmakeraw(&raw_attrs);
 
+       switch (stdio->fd) {
+               case STDIN_FILENO:
+                       raw_attrs.c_oflag = stdio->attrs.c_oflag;
+                       break;
+
+               case STDOUT_FILENO:
+                       raw_attrs.c_iflag = stdio->attrs.c_iflag;
+                       raw_attrs.c_lflag = stdio->attrs.c_lflag;
+                       break;
+       }
+
        // Restore the attributes
        r = tcsetattr(stdio->fd, TCSANOW, &raw_attrs);
        if (r) {