util-linux/include
наб f358fe6105 lib/pty: Put master PTY into non-blocking mode and buffer its output to avoid deadlock
If we filled the script->child buffer before the child had a chance to read any
input, we'd sleep forever in write_all(pty->master), and the child would sleep
forever in write(1<pty->slave>)

By putting the master PTY in non-blocking mode, we can poll(pty->master,
POLLOUT) and keep supplying more data as the child reads from the buffer

Fixes Debian bug #1003095

Signed-off-by: Karel Zak <kzak@redhat.com>
2023-02-17 15:04:28 +08:00
..
Makemodule.am merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
all-io.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
bitops.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
blkdev.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
buffer.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
c.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
c_strtod.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
canonicalize.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
caputils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
carefulputc.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
cctype.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
closestream.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
color-names.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
colors.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
cpuset.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
crc32.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
crc32c.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
debug.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
debugobj.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
encode.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
env.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
exec_shell.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
exitcodes.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
fileeq.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
fileutils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
fuzz.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
idcache.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
ismounted.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
iso9660.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
jsonwrt.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
linux_version.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
list.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
loopdev.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
mangle.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
match.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
mbsalign.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
mbsedit.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
md5.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
meson.build merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
minix.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
monotonic.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
namespace.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
nls.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
optutils.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
pager.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
partx.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
path.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
pathnames.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
pidfd-utils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
plymouth-ctrl.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
procfs.h lib/procfs: add function to parse /proc/#/stat 2023-02-17 15:01:19 +08:00
pt-bsd.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
pt-gpt-partnames.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
pt-mbr-partnames.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
pt-mbr.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
pt-sgi.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
pt-sun.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
pty-session.h lib/pty: Put master PTY into non-blocking mode and buffer its output to avoid deadlock 2023-02-17 15:04:28 +08:00
pwdutils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
randutils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
rpmatch.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
selinux-utils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
sha1.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
signames.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
statfs_magic.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
strutils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
strv.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
swapheader.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
swapprober.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
sysfs.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
timer.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
timeutils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
ttyutils.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00
widechar.h Import Upstream version 2.34 2022-05-14 03:14:32 +08:00
xalloc.h merge upstream 2.38.1 2023-02-17 14:33:46 +08:00