| 265 |
flags = fcntl(STDIN_FILENO, F_GETFL, 0); |
flags = fcntl(STDIN_FILENO, F_GETFL, 0); |
| 266 |
fcntl(STDIN_FILENO, F_SETFL, flags | O_NONBLOCK); |
fcntl(STDIN_FILENO, F_SETFL, flags | O_NONBLOCK); |
| 267 |
|
|
| 268 |
for (loop = 1; loop && !SYS_server_exit;) |
for (loop = 1; loop && pos >= len && !SYS_server_exit;) |
| 269 |
{ |
{ |
| 270 |
if (SSH_v2 && ssh_channel_is_closed(SSH_channel)) |
if (SSH_v2 && ssh_channel_is_closed(SSH_channel)) |
| 271 |
{ |
{ |
| 377 |
{ |
{ |
| 378 |
unsigned char c = buf[pos++]; |
unsigned char c = buf[pos++]; |
| 379 |
|
|
| 380 |
|
// Convert \r\n to \r |
| 381 |
|
if (c == CR && pos < len && buf[pos] == LF) |
| 382 |
|
{ |
| 383 |
|
pos++; |
| 384 |
|
} |
| 385 |
|
|
| 386 |
|
// Convert single \n to \r |
| 387 |
|
if (c == LF) |
| 388 |
|
{ |
| 389 |
|
c = CR; |
| 390 |
|
} |
| 391 |
|
|
| 392 |
if (c == KEY_CONTROL) |
if (c == KEY_CONTROL) |
| 393 |
{ |
{ |
| 394 |
if (in_control == 0) |
if (in_control == 0) |