|
version 1.10.10.1, 2017/01/22 17:59:51
|
version 1.14.4.2, 2025/12/21 23:21:40
|
|
Line 12 terms:
|
Line 12 terms:
|
| All of the documentation and software included in the ELWIX and AITNET |
All of the documentation and software included in the ELWIX and AITNET |
| Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org> |
Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org> |
| |
|
| Copyright 2004 - 2017 | Copyright 2004 - 2025 |
| by Michael Pounov <misho@elwix.org>. All rights reserved. |
by Michael Pounov <misho@elwix.org>. All rights reserved. |
| |
|
| Redistribution and use in source and binary forms, with or without |
Redistribution and use in source and binary forms, with or without |
|
Line 205 typedef struct {
|
Line 205 typedef struct {
|
| |
|
| /* Commands structure for CLI */ |
/* Commands structure for CLI */ |
| |
|
| |
#define CLI_CMD_DEFINE(x) int (x)(void *, int, char **) |
| typedef int (*cmd_func_t)(/*linebuffer_t **/ void * __restrict cli_buffer, int idx, |
typedef int (*cmd_func_t)(/*linebuffer_t **/ void * __restrict cli_buffer, int idx, |
| char ** __restrict args); |
char ** __restrict args); |
| struct tagCommand { |
struct tagCommand { |
|
Line 229 typedef struct {
|
Line 230 typedef struct {
|
| int line_kill; |
int line_kill; |
| char line_mode; |
char line_mode; |
| |
|
| |
char line_porigin[STRSIZ]; |
| char *line_prompt; |
char *line_prompt; |
| |
|
| int line_bol; |
int line_bol; |
| int line_eol; |
int line_eol; |
| int line_len; |
int line_len; |
| char *line_buf; |
char *line_buf; |
| |
char *line_input; |
| |
|
| const struct tagHistory *line_h; |
const struct tagHistory *line_h; |
| history_t line_history; |
history_t line_history; |
| |
|
| bindkey_t *line_keys; |
bindkey_t *line_keys; |
| |
bindkey_t *line_inkeys; |
| |
|
| int line_level; |
int line_level; |
| commands_t line_cmds; |
commands_t line_cmds; |
|
Line 248 typedef struct {
|
Line 252 typedef struct {
|
| int line_out; |
int line_out; |
| } linebuffer_t; |
} linebuffer_t; |
| |
|
| |
#ifdef __cplusplus |
| |
extern "C" { |
| |
#endif |
| |
|
| /* Error support functions */ |
/* Error support functions */ |
| |
|
|
Line 349 unsigned int cli_telnet_GetCmd(struct telnetAttrs *att
|
Line 356 unsigned int cli_telnet_GetCmd(struct telnetAttrs *att
|
| * @arg3 = sub-option data size, if 0 not specified data |
* @arg3 = sub-option data size, if 0 not specified data |
| * return: -1 can`t set command; !=-1 ok |
* return: -1 can`t set command; !=-1 ok |
| */ |
*/ |
| int cli_telnet_SetCmd(struct telnetAttrs *attr, unsigned char cmd, unsigned char optz, ...); | int cli_telnet_SetCmd(struct telnetAttrs *attr, unsigned char cmd, int optz, ...); |
| |
|
| /* |
/* |
| * cli_telnet_Answer() - Automatic generate commands answer to send from telnet |
* cli_telnet_Answer() - Automatic generate commands answer to send from telnet |
|
Line 524 void cliEnd(linebuffer_t * __restrict cli_buffer);
|
Line 531 void cliEnd(linebuffer_t * __restrict cli_buffer);
|
| linebuffer_t *cliInit(int fin, int fout, const char *prompt); |
linebuffer_t *cliInit(int fin, int fout, const char *prompt); |
| |
|
| /* |
/* |
| * cliInitLine() - Init CLI input line terminal | * cliSetLine() - Set CLI input line terminal |
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
| * return: none | * @old = Old terminal settings |
| | * return: -1 error or 0 ok |
| */ |
*/ |
| int cliInitLine(linebuffer_t * __restrict cli_buffer); | int cliSetLine(linebuffer_t * __restrict cli_buffer, struct termios * __restrict old); |
| /* |
/* |
| |
* cliResetLine() - Reset CLI input line terminal |
| |
* |
| |
* @cli_buffer = CLI buffer |
| |
* @old = Original terminal settings |
| |
* return: -1 error or 0 ok |
| |
*/ |
| |
int cliResetLine(linebuffer_t * __restrict cli_buffer, struct termios * __restrict orig); |
| |
/* |
| |
* cliEcho() - Switch echo on or off |
| |
* |
| |
* @cli_buffer = CLI buffer |
| |
* @on = On or off for echo on input handler |
| |
* return: -1 error or 0 ok |
| |
*/ |
| |
int cliEcho(linebuffer_t * __restrict cli_buffer, int on); |
| |
/* |
| * cliReadLine() - Read line from opened CLI session |
* cliReadLine() - Read line from opened CLI session |
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
|
Line 540 int cliInitLine(linebuffer_t * __restrict cli_buffer);
|
Line 564 int cliInitLine(linebuffer_t * __restrict cli_buffer);
|
| char *cliReadLine(linebuffer_t * __restrict cli_buffer, int timeout); |
char *cliReadLine(linebuffer_t * __restrict cli_buffer, int timeout); |
| |
|
| /* |
/* |
| |
* cliRun() - CLI run command line |
| |
* |
| |
* @cli_buffer = CLI buffer |
| |
* @psInput = Input command line |
| |
* @prompt = Display prompt after command |
| |
* return: RETCODE_ERR error, RETCODE_OK ok |
| |
*/ |
| |
int cliRun(linebuffer_t * __restrict cli_buffer, char *psInput, int prompt); |
| |
|
| |
/* |
| * cliLoop() - CLI main loop |
* cliLoop() - CLI main loop |
| * |
* |
| * @cli_buffer = CLI buffer |
* @cli_buffer = CLI buffer |
|
Line 561 int cliNetLoop(linebuffer_t * __restrict cli_buffer, c
|
Line 595 int cliNetLoop(linebuffer_t * __restrict cli_buffer, c
|
| int sock, int timeout); |
int sock, int timeout); |
| #define cliKillLoop(_x) (assert((_x)), (_x)->line_kill = 1) |
#define cliKillLoop(_x) (assert((_x)), (_x)->line_kill = 1) |
| |
|
| |
#ifdef __cplusplus |
| |
} |
| |
#endif |
| |
|
| #endif |
#endif |