Diff for /libaitcli/inc/aitcli.h between versions 1.8 and 1.12

version 1.8, 2013/10/08 12:04:42 version 1.12, 2020/09/01 23:19:54
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 - 2020
         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 533  int cliInitLine(linebuffer_t * __restrict cli_buffer); Line 536  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);
   
 /*  /*
    * 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
  * @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

Removed from v.1.8  
changed lines
  Added in v.1.12


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