Diff for /libaitcli/inc/aitcli.h between versions 1.9 and 1.11

version 1.9, 2013/11/20 16:26:51 version 1.11, 2019/02/04 21:22:31
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, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013Copyright 2004 - 2019
         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 226  typedef SLIST_HEAD(slCommandHead, tagCommand) commands Line 227  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_porigin[STRSIZ];
         char                    *line_prompt;          char                    *line_prompt;
   
         int                     line_bol;          int                     line_bol;
Line 342  unsigned int cli_telnet_GetCmd(struct telnetAttrs *att Line 345  unsigned int cli_telnet_GetCmd(struct telnetAttrs *att
  *   *
  * @attr = input attribute   * @attr = input attribute
  * @cmd = command   * @cmd = command
 * @opt = option, if 0xff not specified * @optz = option, if 0xff not specified
  * @arg1 = sub-option code, if 0xff not specified   * @arg1 = sub-option code, if 0xff not specified
  * @arg2 = sub-option data, if NULL not specified   * @arg2 = sub-option data, if NULL not specified
  * @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 opt, ...);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 534  int cliInitLine(linebuffer_t * __restrict cli_buffer); Line 537  int cliInitLine(linebuffer_t * __restrict cli_buffer);
  *   *
  * @cli_buffer = CLI buffer   * @cli_buffer = CLI buffer
  * @timeout = Session timeout (-1 infinit)   * @timeout = Session timeout (-1 infinit)
  * @cmd_name = If timeout reached, we should call with this cmd_name (default name is "exit")  
  * 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, int timeout, const char *cmd_name);char *cliReadLine(linebuffer_t * __restrict cli_buffer, int timeout);
   
 /*  /*
  * cliLoop() - CLI main loop   * cliLoop() - CLI main loop
Line 545  char *cliReadLine(linebuffer_t * __restrict cli_buffer Line 547  char *cliReadLine(linebuffer_t * __restrict cli_buffer
  * @cli_buffer = CLI buffer   * @cli_buffer = CLI buffer
  * @csHistFile = History file name   * @csHistFile = History file name
  * @timeout = Session timeout (-1 infinit)   * @timeout = Session timeout (-1 infinit)
  * @cmd_name = If timeout reached, we should call with this cmd_name (default name is "exit")  
  * 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);
                int timeout, const char *cmd_name); 
 /*  /*
  * cliNetLoop() - CLI network main loop binded to socket   * cliNetLoop() - CLI network main loop binded to socket
  *   *
Line 557  int cliLoop(linebuffer_t * __restrict cli_buffer, cons Line 557  int cliLoop(linebuffer_t * __restrict cli_buffer, cons
  * @csHistFile = History file name   * @csHistFile = History file name
  * @sock = client socket   * @sock = client socket
  * @timeout = Session timeout (-1 infinit)   * @timeout = Session timeout (-1 infinit)
  * @cmd_name = If timeout reached, we should call with this cmd_name (default name is "exit")  
  * 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 cliNetLoop(linebuffer_t * __restrict cli_buffer, const char *csHistFile, 
                int sock, int timeout, const char *cmd_name);                int sock, int timeout);
 #define cliKillLoop(_x) (assert((_x)), (_x)->line_kill = 1)
   
   
 #endif  #endif

Removed from v.1.9  
changed lines
  Added in v.1.11


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>