|
version 1.2.2.6, 2010/06/07 11:32:50
|
version 1.2.2.12, 2010/06/09 09:32:30
|
|
Line 166 typedef struct {
|
Line 166 typedef struct {
|
| |
|
| /* Commands structure for CLI */ |
/* Commands structure for CLI */ |
| |
|
| typedef int (*cmd_func_t)(/*linebuffer_t **/ void * __restrict buffer, int argc, char ** __restrict argv); | typedef int (*cmd_func_t)(/*linebuffer_t **/ void * __restrict buffer, int idx, char ** __restrict args); |
| struct tagCommand { |
struct tagCommand { |
| int cmd_level; |
int cmd_level; |
| |
|
|
Line 200 typedef struct {
|
Line 200 typedef struct {
|
| |
|
| bindkey_t *line_keys; |
bindkey_t *line_keys; |
| |
|
| |
int line_level; |
| commands_t line_cmds; |
commands_t line_cmds; |
| |
|
| int line_in; |
int line_in; |
|
Line 215 inline int cli_GetErrno();
|
Line 216 inline int cli_GetErrno();
|
| inline const char *cli_GetError(); |
inline const char *cli_GetError(); |
| |
|
| |
|
| |
/* CLI Helper functions */ |
| |
|
| |
/* |
| |
* cli_Cmd_Unsupported() Builtin helper function for unsupported commands |
| |
* @buffer = CLI buffer |
| |
* @idx = Selected command ID |
| |
* @args = Parsed arguments array |
| |
* return: RETCODE_OK ok |
| |
*/ |
| |
int cli_Cmd_Unsupported(void * __restrict buffer, int idx, char ** __restrict args); |
| |
|
| |
|
| /* CLI Functions */ |
/* CLI Functions */ |
| |
|
| /* |
/* |
|
Line 313 inline void cli_setPrompt(linebuffer_t * __restrict bu
|
Line 326 inline void cli_setPrompt(linebuffer_t * __restrict bu
|
| * return: none |
* return: none |
| */ |
*/ |
| inline void cli_Printf(linebuffer_t * __restrict buffer, char *fmt, ...); |
inline void cli_Printf(linebuffer_t * __restrict buffer, char *fmt, ...); |
| |
/* |
| |
* cli_PrintHelp() Print help screen |
| |
* @buffer = CLI buffer |
| |
* return: none |
| |
*/ |
| |
inline void cli_PrintHelp(linebuffer_t * __restrict buffer); |
| |
|
| /* |
/* |
| * cliEnd() Clear data, Free resources and close CLI session |
* cliEnd() Clear data, Free resources and close CLI session |
|
Line 359 int cliLoop(linebuffer_t * __restrict buffer, const ch
|
Line 378 int cliLoop(linebuffer_t * __restrict buffer, const ch
|
| * @win = window size of tty |
* @win = window size of tty |
| * return: RETCODE_ERR error, RETCODE_OK ok |
* return: RETCODE_ERR error, RETCODE_OK ok |
| */ |
*/ |
| int cliNetLoop(linebuffer_t * __restrict buffer, const char *csHistFile, int sock, | int cliNetLoop(linebuffer_t * __restrict buffer, const char *csHistFile, int sock); |
| struct termios *term, struct winsize *win); | |
| |
| |
| /* CLI Helper functions */ | |
| |
| /* | |
| * cli_Cmd_Unsupported() Builtin helper function for unsupported commands | |
| * @cmds = Commands list | |
| * @idx = Selected command ID | |
| * @out = Output handle | |
| * @args = Parsed arguments array | |
| * return: -1 error, 0 = ok, 1 exit from Cli! | |
| */ | |
| int cli_Cmd_Unsupported(void *cmds, int idx, FILE *out, char ** __restrict args); | |
| /* | |
| * cli_Cmd_Help() Builtin helper function for Help screen | |
| * @cmds = Commands list | |
| * @idx = Selected command ID | |
| * @out = Output handle | |
| * @args = Parsed arguments array | |
| * return: -1 error, 0 = ok | |
| */ | |
| int cli_Cmd_Help(void *cmds, int idx, FILE *out, char ** __restrict args); | |
| /* | |
| * cli_Cmd_Exit() Builtin helper function for Exit from Cli | |
| * @cmds = Commands list | |
| * @idx = Selected command ID | |
| * @out = Output handle | |
| * @args = Parsed arguments array | |
| * return: 1 exit from Cli! | |
| */ | |
| int cli_Cmd_Exit(void *cmds, int idx, FILE *out, char ** __restrict args); | |
| |
| |
| /* | |
| * cli_Register_Commands - Declare helper function for register and export Commands variable | |
| */ | |
| #define CLI_REGISTER_COMMANDS(CMDS) \ | |
| extern commands_t CMDS[]; | |
| /* | |
| * cli_Make_Comp_Commands - Declare helper function for Commands completion arguments | |
| */ | |
| #define CLI_MAKE_COMP_COMMANDS(FUNC, CMDS) \ | |
| char *FUNC(const char *text, int state) \ | |
| { \ | |
| register int i; \ | |
| int len = strlen(text); \ | |
| for (i = state; CMDS[i].cmd_name; i++) { \ | |
| if (strncmp(CMDS[i].cmd_name, "---", 3) && \ | |
| !strncmp(CMDS[i].cmd_name, text, len)) \ | |
| return strdup(CMDS[i].cmd_name); \ | |
| } \ | |
| return NULL; \ | |
| } | |
| |
| /* | |
| * cli_Make_Comp_Args - Declare helper function for Arguments completion | |
| */ | |
| #define CLI_MAKE_COMP_ARGS(FUNC, ARGS) \ | |
| char *FUNC(const char *text __attribute__((unused)), int state) \ | |
| { \ | |
| while (ARGS[state]) \ | |
| return strdup(ARGS[state]); \ | |
| return NULL; \ | |
| } | |
| |
|
| |
|
| #endif |
#endif |