|
version 1.6.2.1, 2013/08/12 09:12:04
|
version 1.10, 2013/11/22 15:17:22
|
|
Line 195 typedef TAILQ_HEAD(tqHistoryHead, tagHistory) history_
|
Line 195 typedef TAILQ_HEAD(tqHistoryHead, tagHistory) history_
|
| |
|
| /* Bind keys structure types */ |
/* Bind keys structure types */ |
| |
|
| typedef int (*bindkey_func_t)(int idx, /*linebuffer_t **/ void * __restrict cli_buffer); | typedef int (*bindkey_func_t)(int idx, /* linebuffer_t * */ void * __restrict cli_buffer); |
| typedef struct { |
typedef struct { |
| int key_len; |
int key_len; |
| unsigned char key_ch[8]; |
unsigned char key_ch[8]; |
|
Line 226 typedef SLIST_HEAD(slCommandHead, tagCommand) commands
|
Line 226 typedef SLIST_HEAD(slCommandHead, tagCommand) commands
|
| /* Main structure, Buffer for CLI work with thread models ;-) special designed by M.Punov */ |
/* Main structure, Buffer for CLI work with thread models ;-) special designed by M.Punov */ |
| |
|
| typedef struct { |
typedef struct { |
| |
int line_kill; |
| char line_mode; |
char line_mode; |
| |
|
| char *line_prompt; |
char *line_prompt; |
|
Line 379 int cli_telnet_Answer(unsigned char *caps, int nCaps,
|
Line 380 int cli_telnet_Answer(unsigned char *caps, int nCaps,
|
| * cli_Cmd_Unsupported() - Builtin helper function for unsupported commands |
* cli_Cmd_Unsupported() - Builtin helper function for unsupported commands |
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| * @idx = Selected command ID | * @idx = Config level |
| * @args = Parsed arguments array |
* @args = Parsed arguments array |
| * return: RETCODE_OK ok |
* return: RETCODE_OK ok |
| */ |
*/ |
|
Line 403 int cli_BindKey(bindkey_t * __restrict key, linebuffer
|
Line 404 int cli_BindKey(bindkey_t * __restrict key, linebuffer
|
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| * @csCmd = Command name |
* @csCmd = Command name |
| * @cliLevel = Level in CLI, -1 unprivi(view from all), 0 main config, 1 sub config ... | * @cliLevel = Level in CLI, -1 view from all levels, 0 hidden, >0 mask levels |
| * @funcCmd = Callback function when user call command |
* @funcCmd = Callback function when user call command |
| * @csInfo = Inline information for command |
* @csInfo = Inline information for command |
| * @csHelp = Help line when call help |
* @csHelp = Help line when call help |
|
Line 418 cli_addCommand(linebuffer_t * __restrict cli_buffer, c
|
Line 419 cli_addCommand(linebuffer_t * __restrict cli_buffer, c
|
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| * @csCmd = Command name |
* @csCmd = Command name |
| * @cliLevel = Level in CLI, -1 unprivi(view from all), 0 main config, 1 sub config ... | * @cliLevel = Level in CLI, -1 view from all levels, 0 hidden, >0 mask levels |
| * return: RETCODE_ERR error, RETCODE_OK ok |
* return: RETCODE_ERR error, RETCODE_OK ok |
| */ |
*/ |
| int |
int |
|
Line 428 cli_delCommand(linebuffer_t * __restrict cli_buffer, c
|
Line 429 cli_delCommand(linebuffer_t * __restrict cli_buffer, c
|
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| * @csCmd = Command name |
* @csCmd = Command name |
| * @cliLevel = Level in CLI, -1 unprivi(view from all), 0 main config, 1 sub config ... | * @cliLevel = Level in CLI, -1 view from all levels, 0 hidden, >0 mask levels |
| * @funcCmd = Callback function when user call command |
* @funcCmd = Callback function when user call command |
| * @csInfo = Inline information for command |
* @csInfo = Inline information for command |
| * @csHelp = Help line when call help |
* @csHelp = Help line when call help |
|
Line 533 int cliInitLine(linebuffer_t * __restrict cli_buffer);
|
Line 534 int cliInitLine(linebuffer_t * __restrict cli_buffer);
|
| * cliReadLine() - Read line from opened CLI session |
* cliReadLine() - Read line from opened CLI session |
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| |
* @timeout = Session timeout (-1 infinit) |
| * return: NULL if error or !=NULL readed line, must be e_free after use! |
* return: NULL if error or !=NULL readed line, must be e_free after use! |
| */ |
*/ |
| char *cliReadLine(linebuffer_t * __restrict cli_buffer); | char *cliReadLine(linebuffer_t * __restrict cli_buffer, int timeout); |
| |
|
| /* |
/* |
| * cliLoop() - CLI main loop |
* cliLoop() - CLI main loop |
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| * @csHistFile = History file name |
* @csHistFile = History file name |
| |
* @timeout = Session timeout (-1 infinit) |
| * return: RETCODE_ERR error, RETCODE_OK ok |
* return: RETCODE_ERR error, RETCODE_OK ok |
| */ |
*/ |
| int cliLoop(linebuffer_t * __restrict cli_buffer, const char *csHistFile); | int cliLoop(linebuffer_t * __restrict cli_buffer, const char *csHistFile, int timeout); |
| /* |
/* |
| * cliNetLoop() - CLI network main loop binded to socket |
* cliNetLoop() - CLI network main loop binded to socket |
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| * @csHistFile = History file name |
* @csHistFile = History file name |
| * @sock = client socket |
* @sock = client socket |
| * @term = stdin termios | * @timeout = Session timeout (-1 infinit) |
| * @win = window size of tty | |
| * return: RETCODE_ERR error, RETCODE_OK ok |
* return: RETCODE_ERR error, RETCODE_OK ok |
| */ |
*/ |
| int cliNetLoop(linebuffer_t * __restrict cli_buffer, const char *csHistFile, int sock); | int cliNetLoop(linebuffer_t * __restrict cli_buffer, const char *csHistFile, |
| | int sock, int timeout); |
| | #define cliKillLoop(_x) (assert((_x)), (_x)->line_kill = 1) |
| |
|
| |
|
| #endif |
#endif |