| 91 |
return ret; |
return ret; |
| 92 |
} |
} |
| 93 |
|
|
| 94 |
int iflush() |
int iflush(void) |
| 95 |
{ |
{ |
| 96 |
int flags; |
int flags; |
| 97 |
struct epoll_event ev, events[MAX_EVENTS]; |
struct epoll_event ev, events[MAX_EVENTS]; |
| 176 |
} |
} |
| 177 |
else |
else |
| 178 |
{ |
{ |
| 179 |
|
#ifdef _DEBUG |
| 180 |
log_error("write(STDOUT) error (%d)\n", errno); |
log_error("write(STDOUT) error (%d)\n", errno); |
| 181 |
|
#endif |
| 182 |
retry = 0; |
retry = 0; |
| 183 |
break; |
break; |
| 184 |
} |
} |
| 335 |
} |
} |
| 336 |
else |
else |
| 337 |
{ |
{ |
| 338 |
|
#ifdef _DEBUG |
| 339 |
log_error("read(STDIN) error (%d)\n", errno); |
log_error("read(STDIN) error (%d)\n", errno); |
| 340 |
|
#endif |
| 341 |
loop = 0; |
loop = 0; |
| 342 |
break; |
break; |
| 343 |
} |
} |
| 357 |
} |
} |
| 358 |
|
|
| 359 |
// For debug |
// For debug |
| 360 |
// for (int j = pos; j < len; j++) |
#ifdef _DEBUG |
| 361 |
// { |
for (int j = pos; j < len; j++) |
| 362 |
// log_common("Debug: <--[%u]\n", (buf[j] + 256) % 256); |
{ |
| 363 |
// } |
log_common("Debug: <--[%u]\n", (buf[j] + 256) % 256); |
| 364 |
|
} |
| 365 |
|
#endif |
| 366 |
} |
} |
| 367 |
|
|
| 368 |
fcntl(STDIN_FILENO, F_SETFL, flags); |
fcntl(STDIN_FILENO, F_SETFL, flags); |
| 540 |
case 49: |
case 49: |
| 541 |
out = KEY_HOME; |
out = KEY_HOME; |
| 542 |
break; |
break; |
| 543 |
|
case 50: |
| 544 |
|
out = KEY_INS; |
| 545 |
|
break; |
| 546 |
case 51: |
case 51: |
| 547 |
out = KEY_DEL; |
out = KEY_DEL; |
| 548 |
break; |
break; |
| 633 |
in_ascii = 0; |
in_ascii = 0; |
| 634 |
switch (tmp[4]) |
switch (tmp[4]) |
| 635 |
{ |
{ |
| 636 |
|
case 65: |
| 637 |
|
out = KEY_CTRL_UP; |
| 638 |
|
break; |
| 639 |
|
case 66: |
| 640 |
|
out = KEY_CTRL_DOWN; |
| 641 |
|
break; |
| 642 |
|
case 67: |
| 643 |
|
out = KEY_CTRL_RIGHT; |
| 644 |
|
break; |
| 645 |
|
case 68: |
| 646 |
|
out = KEY_CTRL_LEFT; |
| 647 |
|
break; |
| 648 |
|
case 70: |
| 649 |
|
out = KEY_CTRL_END; |
| 650 |
|
break; |
| 651 |
|
case 72: |
| 652 |
|
out = KEY_CTRL_HOME; |
| 653 |
|
break; |
| 654 |
case 80: |
case 80: |
| 655 |
out = KEY_CTRL_F1; |
out = KEY_CTRL_F1; |
| 656 |
break; |
break; |
| 817 |
} |
} |
| 818 |
|
|
| 819 |
// for debug |
// for debug |
| 820 |
// if (out != KEY_TIMEOUT && out != KEY_NULL) |
#ifdef _DEBUG |
| 821 |
// { |
if (out != KEY_TIMEOUT && out != KEY_NULL) |
| 822 |
// log_common("Debug: -->[0x %x]\n", out); |
{ |
| 823 |
// } |
log_common("Debug: -->[0x %x]\n", out); |
| 824 |
|
} |
| 825 |
|
#endif |
| 826 |
|
|
| 827 |
return out; |
return out; |
| 828 |
} |
} |
| 830 |
int igetch_t(int sec) |
int igetch_t(int sec) |
| 831 |
{ |
{ |
| 832 |
int ch; |
int ch; |
| 833 |
time_t t_begin = time(0); |
time_t t_begin = time(NULL); |
| 834 |
|
|
| 835 |
do |
do |
| 836 |
{ |
{ |
| 837 |
ch = igetch(100); |
ch = igetch(100); |
| 838 |
} while (!SYS_server_exit && ch == KEY_TIMEOUT && (time(0) - t_begin < sec)); |
} while (!SYS_server_exit && ch == KEY_TIMEOUT && (time(NULL) - t_begin < sec)); |
| 839 |
|
|
| 840 |
return ch; |
return ch; |
| 841 |
} |
} |