[BACK]Return to channels.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/channels.c between version 1.348 and 1.349

version 1.348, 2015/10/15 23:51:40 version 1.349, 2016/02/05 13:28:19
Line 1869 
Line 1869 
         if (buffer_len(&c->input) < need) {          if (buffer_len(&c->input) < need) {
                 rlen = need - buffer_len(&c->input);                  rlen = need - buffer_len(&c->input);
                 len = read(c->rfd, buf, MIN(rlen, CHAN_RBUF));                  len = read(c->rfd, buf, MIN(rlen, CHAN_RBUF));
                   if (len < 0 && (errno == EINTR || errno == EAGAIN))
                           return buffer_len(&c->input);
                 if (len <= 0) {                  if (len <= 0) {
                         if (errno != EINTR && errno != EAGAIN) {                          debug2("channel %d: ctl read<=0 rfd %d len %d",
                                 debug2("channel %d: ctl read<=0 rfd %d len %d",                              c->self, c->rfd, len);
                                     c->self, c->rfd, len);                          chan_read_failed(c);
                                 chan_read_failed(c);                          return 0;
                                 return 0;  
                         }  
                 } else                  } else
                         buffer_append(&c->input, buf, len);                          buffer_append(&c->input, buf, len);
         }          }

Legend:
Removed from v.1.348  
changed lines
  Added in v.1.349