summaryrefslogtreecommitdiffstats
path: root/channels.c
diff options
context:
space:
mode:
authorBen Lindstrom <mouring@eviladmin.org>2002-07-04 18:11:09 +0000
committerBen Lindstrom <mouring@eviladmin.org>2002-07-04 18:11:09 +0000
commit92ea0eadbe247a6b5c1893ae2a94358cca3be994 (patch)
treefc614e1d380c8c7be3ac87dca52bbde430decab1 /channels.c
parent51b2488aad8b5387a8107e90b2f97dbe27ca850a (diff)
- (bal) Limit data to TTY for AIX only (Newer versions can't handle the
faster data rate) Bug #124
Diffstat (limited to 'channels.c')
-rw-r--r--channels.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/channels.c b/channels.c
index 29eaee7c..3ab8ed8a 100644
--- a/channels.c
+++ b/channels.c
@@ -1279,6 +1279,11 @@ channel_handle_wfd(Channel *c, fd_set * readset, fd_set * writeset)
data = buffer_ptr(&c->output);
dlen = buffer_len(&c->output);
len = write(c->wfd, data, dlen);
+#ifdef _AIX
+ /* XXX: Later AIX versions can't push as much data to tty */
+ if (compat20 && c->isatty && dlen >= 8*1024)
+ dlen = 8*1024;
+#endif
if (len < 0 && (errno == EINTR || errno == EAGAIN))
return 1;
if (len <= 0) {