=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/ssh/clientloop.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- src/usr.bin/ssh/clientloop.c 1999/11/24 19:53:46 1.13 +++ src/usr.bin/ssh/clientloop.c 1999/12/06 20:15:26 1.14 @@ -15,7 +15,7 @@ */ #include "includes.h" -RCSID("$Id: clientloop.c,v 1.13 1999/11/24 19:53:46 markus Exp $"); +RCSID("$Id: clientloop.c,v 1.14 1999/12/06 20:15:26 deraadt Exp $"); #include "xmalloc.h" #include "ssh.h" @@ -466,13 +466,11 @@ /* Flush stdout and stderr buffers. */ if (buffer_len(&stdout_buffer) > 0) - write(fileno(stdout), - buffer_ptr(&stdout_buffer), - buffer_len(&stdout_buffer)); + atomicio(write, fileno(stdout), buffer_ptr(&stdout_buffer), + buffer_len(&stdout_buffer)); if (buffer_len(&stderr_buffer) > 0) - write(fileno(stderr), - buffer_ptr(&stderr_buffer), - buffer_len(&stderr_buffer)); + atomicio(write, fileno(stderr), buffer_ptr(&stderr_buffer), + buffer_len(&stderr_buffer)); leave_raw_mode(); @@ -739,7 +737,7 @@ if (FD_ISSET(fileno(stdout), writeset)) { /* Write as much data as possible. */ len = write(fileno(stdout), buffer_ptr(&stdout_buffer), - buffer_len(&stdout_buffer)); + buffer_len(&stdout_buffer)); if (len <= 0) { if (errno == EAGAIN) len = 0; @@ -762,7 +760,7 @@ if (FD_ISSET(fileno(stderr), writeset)) { /* Write as much data as possible. */ len = write(fileno(stderr), buffer_ptr(&stderr_buffer), - buffer_len(&stderr_buffer)); + buffer_len(&stderr_buffer)); if (len <= 0) { if (errno == EAGAIN) len = 0; @@ -911,7 +909,7 @@ /* Output any buffered data for stdout. */ while (buffer_len(&stdout_buffer) > 0) { len = write(fileno(stdout), buffer_ptr(&stdout_buffer), - buffer_len(&stdout_buffer)); + buffer_len(&stdout_buffer)); if (len <= 0) { error("Write failed flushing stdout buffer."); break; @@ -922,7 +920,7 @@ /* Output any buffered data for stderr. */ while (buffer_len(&stderr_buffer) > 0) { len = write(fileno(stderr), buffer_ptr(&stderr_buffer), - buffer_len(&stderr_buffer)); + buffer_len(&stderr_buffer)); if (len <= 0) { error("Write failed flushing stderr buffer."); break;