- (bal) AIX tty data limiting patch fix by leigh@solinno.co.uk
This commit is contained in:
parent
287077eaf2
commit
beb5f3304b
|
@ -1,3 +1,6 @@
|
|||
20020722
|
||||
- (bal) AIX tty data limiting patch fix by leigh@solinno.co.uk
|
||||
|
||||
20020721
|
||||
- (stevesk) [auth-pam.c] merge cosmetic changes from solar's
|
||||
openssh-3.4p1-owl-password-changing.diff
|
||||
|
@ -1408,4 +1411,4 @@
|
|||
- (stevesk) entropy.c: typo in debug message
|
||||
- (djm) ssh-keygen -i needs seeded RNG; report from markus@
|
||||
|
||||
$Id: ChangeLog,v 1.2386 2002/07/21 23:59:40 stevesk Exp $
|
||||
$Id: ChangeLog,v 1.2387 2002/07/22 15:28:53 mouring Exp $
|
||||
|
|
|
@ -186,6 +186,7 @@ channel_register_fds(Channel *c, int rfd, int wfd, int efd,
|
|||
} else {
|
||||
c->isatty = 0;
|
||||
}
|
||||
c->wfd_isatty = isatty(c->wfd);
|
||||
|
||||
/* enable nonblocking mode */
|
||||
if (nonblock) {
|
||||
|
@ -1286,12 +1287,12 @@ channel_handle_wfd(Channel *c, fd_set * readset, fd_set * writeset)
|
|||
buffer_len(&c->output) > 0) {
|
||||
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)
|
||||
if (compat20 && c->wfd_isatty && dlen > 8*1024)
|
||||
dlen = 8*1024;
|
||||
#endif
|
||||
len = write(c->wfd, data, dlen);
|
||||
if (len < 0 && (errno == EINTR || errno == EAGAIN))
|
||||
return 1;
|
||||
if (len <= 0) {
|
||||
|
|
|
@ -77,6 +77,7 @@ struct Channel {
|
|||
int efd; /* extended fd */
|
||||
int sock; /* sock fd */
|
||||
int isatty; /* rfd is a tty */
|
||||
int wfd_isatty; /* wfd is a tty */
|
||||
int force_drain; /* force close on iEOF */
|
||||
int delayed; /* fdset hack */
|
||||
Buffer input; /* data read from socket, to be sent over
|
||||
|
|
Loading…
Reference in New Issue