|
version 1.2.2.5, 2010/06/07 09:04:46
|
version 1.2.2.11, 2010/06/08 08:05:12
|
|
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; |
| |
|
| int cmd_min; |
|
| int cmd_len; |
int cmd_len; |
| char cmd_name[STRSIZ]; |
char cmd_name[STRSIZ]; |
| |
|
|
Line 201 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 216 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 226 inline const char *cli_GetError();
|
Line 238 inline const char *cli_GetError();
|
| */ |
*/ |
| int cli_BindKey(bindkey_t * __restrict key, linebuffer_t * __restrict buffer); |
int cli_BindKey(bindkey_t * __restrict key, linebuffer_t * __restrict buffer); |
| |
|
| |
|
| /* |
/* |
| |
* cli_addCommand() Add command to CLI session |
| |
* @buffer = CLI buffer |
| |
* @csCmd = Command name |
| |
* @cliLevel = Level in CLI, -1 unprivi(view from all), 0 main config, 1 sub config ... |
| |
* @funcCmd = Callback function when user call command |
| |
* @csInfo = Inline information for command |
| |
* @csHelp = Help line when call help |
| |
* return: RETCODE_ERR error, RETCODE_OK ok |
| |
*/ |
| |
int |
| |
cli_addCommand(linebuffer_t * __restrict buffer, const char *csCmd, int cliLevel, cmd_func_t funcCmd, |
| |
const char *csInfo, const char *csHelp); |
| |
/* |
| |
* cli_delCommand() Delete command from CLI session |
| |
* @buffer = CLI buffer |
| |
* @csCmd = Command name |
| |
* @cliLevel = Level in CLI, -1 unprivi(view from all), 0 main config, 1 sub config ... |
| |
* return: RETCODE_ERR error, RETCODE_OK ok |
| |
*/ |
| |
int |
| |
cli_delCommand(linebuffer_t * __restrict buffer, const char *csCmd, int cliLevel); |
| |
/* |
| |
* cli_updCommand() Update command in CLI session |
| |
* @buffer = CLI buffer |
| |
* @csCmd = Command name |
| |
* @cliLevel = Level in CLI, -1 unprivi(view from all), 0 main config, 1 sub config ... |
| |
* @funcCmd = Callback function when user call command |
| |
* @csInfo = Inline information for command |
| |
* @csHelp = Help line when call help |
| |
* return: RETCODE_ERR error, RETCODE_OK ok |
| |
*/ |
| |
int |
| |
cli_updCommand(linebuffer_t * __restrict buffer, const char *csCmd, int cliLevel, cmd_func_t funcCmd, |
| |
const char *csInfo, const char *csHelp); |
| |
|
| |
|
| |
/* |
| * cli_addHistory() Add line to history |
* cli_addHistory() Add line to history |
| * @buffer = CLI buffer |
* @buffer = CLI buffer |
| * @str = Add custom text or if NULL use readed line from CLI buffer |
* @str = Add custom text or if NULL use readed line from CLI buffer |
|
Line 276 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 326 int cliNetLoop(linebuffer_t * __restrict buffer, const
|
Line 382 int cliNetLoop(linebuffer_t * __restrict buffer, const
|
| struct termios *term, struct winsize *win); |
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 |
* cli_Make_Comp_Commands - Declare helper function for Commands completion arguments |
| */ |
*/ |