| 35 |
|
|
| 36 |
// static input / output buffer |
// static input / output buffer |
| 37 |
static char stdin_buf[LINE_BUFFER_LEN]; |
static char stdin_buf[LINE_BUFFER_LEN]; |
| 38 |
static char stdin_conv[LINE_BUFFER_LEN]; |
static char stdout_buf[BUFSIZ]; |
| 39 |
static int stdin_buf_len = 0; |
static int stdin_buf_len = 0; |
| 40 |
static int stdin_conv_len = 0; |
static int stdout_buf_len = 0; |
| 41 |
static int stdin_buf_offset = 0; |
static int stdin_buf_offset = 0; |
| 42 |
static int stdin_conv_offset = 0; |
static int stdout_buf_offset = 0; |
| 43 |
|
|
| 44 |
static char stdout_buf[BUFSIZ]; |
static char stdin_conv[LINE_BUFFER_LEN * 2]; |
| 45 |
static char stdout_conv[BUFSIZ]; |
static char stdout_conv[BUFSIZ * 2]; |
| 46 |
static int stdout_buf_len = 0; |
static int stdin_conv_len = 0; |
| 47 |
static int stdout_conv_len = 0; |
static int stdout_conv_len = 0; |
| 48 |
static int stdout_buf_offset = 0; |
static int stdin_conv_offset = 0; |
| 49 |
static int stdout_conv_offset = 0; |
static int stdout_conv_offset = 0; |
| 50 |
|
|
| 51 |
static iconv_t stdin_cd = NULL; |
static iconv_t stdin_cd = NULL; |
| 285 |
flags = fcntl(STDIN_FILENO, F_GETFL, 0); |
flags = fcntl(STDIN_FILENO, F_GETFL, 0); |
| 286 |
fcntl(STDIN_FILENO, F_SETFL, flags | O_NONBLOCK); |
fcntl(STDIN_FILENO, F_SETFL, flags | O_NONBLOCK); |
| 287 |
|
|
| 288 |
for (loop = 1; loop && stdin_conv_offset >= stdin_conv_len && !SYS_server_exit;) |
for (loop = 1; loop && stdin_buf_len < sizeof(stdin_buf) && stdin_conv_offset >= stdin_conv_len && !SYS_server_exit;) |
| 289 |
{ |
{ |
| 290 |
if (SSH_v2 && ssh_channel_is_closed(SSH_channel)) |
if (SSH_v2 && ssh_channel_is_closed(SSH_channel)) |
| 291 |
{ |
{ |