telnet/telnetd-0.17-pty_read.patch
Troy Dawson a36e3113ae RHEL 9.0.0 Alpha bootstrap
The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/telnet#7fe48cbcb5d5c5594e848a95b4884cf0c09360eb
2020-10-15 10:26:56 -07:00

26 lines
775 B
Diff

--- telnetd/telnetd.c 2005-01-19 14:37:25.000000000 +0000
+++ telnetd/telnetd.c.new 2005-01-19 14:48:12.000000000 +0000
@@ -697,6 +697,7 @@
int on = 1;
char *HE;
const char *IM;
+ int pty_read_ok = 0; /* track whether the pty read has worked yet */
/*
* Initialize the slc mapping table.
@@ -1016,12 +1017,13 @@
* off the master side before the slave side is
* opened, we get EIO.
*/
- if (pcc < 0 && (errno == EWOULDBLOCK || errno == EIO)) {
+ if (pcc < 0 && (errno == EWOULDBLOCK || (errno == EIO && pty_read_ok == 0))) {
pcc = 0;
}
else {
if (pcc <= 0)
break;
+ pty_read_ok = 1; /* mark connection up for read */
#ifdef LINEMODE
/*
* If ioctl from pty, pass it through net