|
|
| version 1.21.2.1, 2025/12/21 22:36:19 | version 1.21.2.2, 2025/12/21 23:21:40 |
|---|---|
| Line 978 cliEnd(linebuffer_t * __restrict cli_buffer) | Line 978 cliEnd(linebuffer_t * __restrict cli_buffer) |
| if (cli_buffer->line_buf) | if (cli_buffer->line_buf) |
| e_free(cli_buffer->line_buf); | e_free(cli_buffer->line_buf); |
| if (cli_buffer->line_inkeys) | |
| e_free(cli_buffer->line_inkeys); | |
| if (cli_buffer->line_input) | |
| e_free(cli_buffer->line_input); | |
| e_free(cli_buffer); | e_free(cli_buffer); |
| cli_buffer = NULL; | cli_buffer = NULL; |
| } else | } else |
| Line 996 linebuffer_t * | Line 1001 linebuffer_t * |
| cliInit(int fin, int fout, const char *prompt) | cliInit(int fin, int fout, const char *prompt) |
| { | { |
| linebuffer_t *cli_buffer; | linebuffer_t *cli_buffer; |
| bindkey_t *keys; | bindkey_t *keys, *inkeys; |
| register int i; | register int i; |
| char szPrompt[STRSIZ + 16] = {[0 ... STRSIZ + 15] = 0}; | char szPrompt[STRSIZ + 16] = {[0 ... STRSIZ + 15] = 0}; |
| Line 1049 cliInit(int fin, int fout, const char *prompt) | Line 1054 cliInit(int fin, int fout, const char *prompt) |
| return NULL; | return NULL; |
| } else | } else |
| memset(keys, 0, sizeof(bindkey_t) * (MAX_BINDKEY + 1)); | memset(keys, 0, sizeof(bindkey_t) * (MAX_BINDKEY + 1)); |
| inkeys = e_calloc(MAX_BINDKEY + 1, sizeof(bindkey_t)); | |
| if (!inkeys) { | |
| LOGERR; | |
| e_free(keys); | |
| if (cli_buffer->line_prompt) | |
| e_free(cli_buffer->line_prompt); | |
| e_free(cli_buffer->line_buf); | |
| e_free(cli_buffer); | |
| return NULL; | |
| } else | |
| memset(inkeys, 0, sizeof(bindkey_t) * (MAX_BINDKEY + 1)); | |
| /* add helper functions */ | /* add helper functions */ |
| cli_addCommand(cli_buffer, "exit", 1, cli_Cmd_Exit, "exit <cr>", "Exit from console"); | cli_addCommand(cli_buffer, "exit", 1, cli_Cmd_Exit, "exit <cr>", "Exit from console"); |
| Line 1065 cliInit(int fin, int fout, const char *prompt) | Line 1081 cliInit(int fin, int fout, const char *prompt) |
| /* fill key bindings */ | /* fill key bindings */ |
| /* ascii chars & ctrl+chars */ | /* ascii chars & ctrl+chars */ |
| for (i = 0; i < 256; i++) { | for (i = 0; i < 256; i++) { |
| *keys[i].key_ch = (u_char) i; | *keys[i].key_ch = *inkeys[i].key_ch = (u_char) i; |
| keys[i].key_len = 1; | keys[i].key_len = inkeys[i].key_len = 1; |
| if (!i || i == *K_CTRL_D) | if (!i || i == *K_CTRL_D) |
| keys[i].key_func = bufEOF; | keys[i].key_func = bufEOF; |
| Line 1093 cliInit(int fin, int fout, const char *prompt) | Line 1109 cliInit(int fin, int fout, const char *prompt) |
| } | } |
| /* alt+chars */ | /* alt+chars */ |
| for (i = 256; i < 512; i++) { | for (i = 256; i < 512; i++) { |
| keys[i].key_ch[0] = 0x1b; | keys[i].key_ch[0] = inkeys[i].key_ch[0] = 0x1b; |
| keys[i].key_ch[1] = (u_char) i - 256; | keys[i].key_ch[1] = inkeys[i].key_ch[1] = (u_char) i - 256; |
| keys[i].key_len = 2; | keys[i].key_len = inkeys[i].key_len = 2; |
| } | } |
| /* 3 bytes */ | /* 3 bytes */ |
| keys[i].key_len = sizeof K_F1 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F1 - 1; |
| memcpy(keys[i].key_ch, K_F1, keys[i].key_len); | memcpy(keys[i].key_ch, K_F1, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F1, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F2 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F2 - 1; |
| memcpy(keys[i].key_ch, K_F2, keys[i].key_len); | memcpy(keys[i].key_ch, K_F2, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F2, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F3 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F3 - 1; |
| memcpy(keys[i].key_ch, K_F3, keys[i].key_len); | memcpy(keys[i].key_ch, K_F3, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F3, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F4 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F4 - 1; |
| memcpy(keys[i].key_ch, K_F4, keys[i].key_len); | memcpy(keys[i].key_ch, K_F4, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F4, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F1 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F1 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F1, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F1, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F1, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F2 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F2 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F2, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F2, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F2, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F3 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F3 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F3, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F3, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F3, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F4 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F4 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F4, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F4, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F4, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F5 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F5 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F5, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F5, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F5, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F6 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F6 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F6, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F6, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F6, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F7 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F7 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F7, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F7, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F7, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F8 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F8 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F8, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F8, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F8, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F9 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F9 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F9, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F9, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F9, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F10 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F10 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F10, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F10, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F10, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F11 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F11 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F11, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F11, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F11, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_SH_F12 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_SH_F12 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_SH_F12, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_SH_F12, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_SH_F12, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F1 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F1 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F1, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F1, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F1, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F2 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F2 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F2, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F2, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F2, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F3 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F3 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F3, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F3, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F3, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F4 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F4 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F4, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F4, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F4, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F5 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F5 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F5, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F5, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F5, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F6 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F6 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F6, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F6, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F6, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F7 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F7 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F7, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F7, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F7, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F8 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F8 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F8, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F8, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F8, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F9 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F9 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F9, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F9, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F9, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F10 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F10 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F10, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F10, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F10, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F11 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F11 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F11, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F11, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F11, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_CTRL_F12 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_CTRL_F12 - 1; |
| memcpy(keys[i].key_ch, K_CTRL_F12, keys[i].key_len); | memcpy(keys[i].key_ch, K_CTRL_F12, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_CTRL_F12, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_HOME - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_HOME - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufBEGIN; | keys[i].key_func = bufBEGIN; |
| memcpy(keys[i].key_ch, K_HOME, keys[i].key_len); | memcpy(keys[i].key_ch, K_HOME, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_HOME, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_END - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_END - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufEND; | keys[i].key_func = bufEND; |
| memcpy(keys[i].key_ch, K_END, keys[i].key_len); | memcpy(keys[i].key_ch, K_END, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_END, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_UP - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_UP - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufUP; | keys[i].key_func = bufUP; |
| memcpy(keys[i].key_ch, K_UP, keys[i].key_len); | memcpy(keys[i].key_ch, K_UP, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_UP, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_DOWN - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_DOWN - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufDOWN; | keys[i].key_func = bufDOWN; |
| memcpy(keys[i].key_ch, K_DOWN, keys[i].key_len); | memcpy(keys[i].key_ch, K_DOWN, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_DOWN, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_RIGHT - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_RIGHT - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufRIGHT; | keys[i].key_func = bufRIGHT; |
| memcpy(keys[i].key_ch, K_RIGHT, keys[i].key_len); | memcpy(keys[i].key_ch, K_RIGHT, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_RIGHT, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_LEFT - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_LEFT - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufLEFT; | keys[i].key_func = bufLEFT; |
| memcpy(keys[i].key_ch, K_LEFT, keys[i].key_len); | memcpy(keys[i].key_ch, K_LEFT, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_LEFT, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_BTAB - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_BTAB - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufBTAB; | keys[i].key_func = bufBTAB; |
| memcpy(keys[i].key_ch, K_BTAB, keys[i].key_len); | memcpy(keys[i].key_ch, K_BTAB, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_BTAB, inkeys[i].key_len); | |
| i++; | i++; |
| /* 4 bytes */ | /* 4 bytes */ |
| keys[i].key_len = sizeof K_INS - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_INS - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufMODE; | keys[i].key_func = bufMODE; |
| memcpy(keys[i].key_ch, K_INS, keys[i].key_len); | memcpy(keys[i].key_ch, K_INS, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_INS, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_DEL - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_DEL - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufDEL; | keys[i].key_func = bufDEL; |
| memcpy(keys[i].key_ch, K_DEL, keys[i].key_len); | memcpy(keys[i].key_ch, K_DEL, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_DEL, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_PGUP - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_PGUP - 1; |
| memcpy(keys[i].key_ch, K_PGUP, keys[i].key_len); | memcpy(keys[i].key_ch, K_PGUP, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_PGUP, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_PGDN - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_PGDN - 1; |
| memcpy(keys[i].key_ch, K_PGDN, keys[i].key_len); | memcpy(keys[i].key_ch, K_PGDN, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_PGDN, inkeys[i].key_len); | |
| i++; | i++; |
| /* 5 bytes */ | /* 5 bytes */ |
| keys[i].key_len = sizeof K_F5 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F5 - 1; |
| memcpy(keys[i].key_ch, K_F5, keys[i].key_len); | memcpy(keys[i].key_ch, K_F5, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F5, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F6 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F6 - 1; |
| memcpy(keys[i].key_ch, K_F6, keys[i].key_len); | memcpy(keys[i].key_ch, K_F6, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F6, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F7 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F7 - 1; |
| memcpy(keys[i].key_ch, K_F7, keys[i].key_len); | memcpy(keys[i].key_ch, K_F7, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F7, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F8 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F8 - 1; |
| memcpy(keys[i].key_ch, K_F8, keys[i].key_len); | memcpy(keys[i].key_ch, K_F8, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F8, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F9 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F9 - 1; |
| memcpy(keys[i].key_ch, K_F9, keys[i].key_len); | memcpy(keys[i].key_ch, K_F9, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F9, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F10 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F10 - 1; |
| memcpy(keys[i].key_ch, K_F10, keys[i].key_len); | memcpy(keys[i].key_ch, K_F10, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F10, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F11 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F11 - 1; |
| memcpy(keys[i].key_ch, K_F11, keys[i].key_len); | memcpy(keys[i].key_ch, K_F11, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F11, inkeys[i].key_len); | |
| i++; | i++; |
| keys[i].key_len = sizeof K_F12 - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_F12 - 1; |
| memcpy(keys[i].key_ch, K_F12, keys[i].key_len); | memcpy(keys[i].key_ch, K_F12, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_F12, inkeys[i].key_len); | |
| i++; | i++; |
| cli_buffer->line_keys = keys; | cli_buffer->line_keys = keys; |
| cli_buffer->line_inkeys = inkeys; | |
| return cli_buffer; | return cli_buffer; |
| } | } |