Diff for /libaitcli/src/cli.c between versions 1.9.14.1 and 1.13

version 1.9.14.1, 2019/02/04 20:43:17 version 1.13, 2025/12/17 23:30:11
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 - 2019Copyright 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 58  int Line 58  int
 cli_Cmd_Exit(void * __restrict cli_buffer, int idx, char ** __restrict args)  cli_Cmd_Exit(void * __restrict cli_buffer, int idx, char ** __restrict args)
 {  {
         cli_Printf(cli_buffer, "\n");          cli_Printf(cli_buffer, "\n");
           ((linebuffer_t*) cli_buffer)->line_kill = 42;
         return RETCODE_EOF;          return RETCODE_EOF;
 }  }
   
Line 138  int Line 139  int
 cli_Cmd_Config(void * __restrict cli_buffer, int idx, char ** __restrict args)  cli_Cmd_Config(void * __restrict cli_buffer, int idx, char ** __restrict args)
 {  {
         linebuffer_t *buf = cli_buffer;          linebuffer_t *buf = cli_buffer;
        char szPrompt[STRSIZ] = {[0 ... STRSIZ - 1] = 0};        char szPrompt[STRSIZ + 16] = {[0 ... STRSIZ + 15] = 0};
   
         if (idx == sizeof idx * 8 - 1)          if (idx == sizeof idx * 8 - 1)
                 return RETCODE_ERR;                  return RETCODE_ERR;
Line 162  int Line 163  int
 cli_Cmd_End(void * __restrict cli_buffer, int idx, char ** __restrict args)  cli_Cmd_End(void * __restrict cli_buffer, int idx, char ** __restrict args)
 {  {
         linebuffer_t *buf = cli_buffer;          linebuffer_t *buf = cli_buffer;
        char szPrompt[STRSIZ] = {[0 ... STRSIZ - 1] = 0};        char szPrompt[STRSIZ + 16] = {[0 ... STRSIZ + 15] = 0};
   
         if (!idx)          if (!idx)
                 return cli_Cmd_Exit(cli_buffer, idx, args);                  return cli_Cmd_Exit(cli_buffer, idx, args);
   
        buf->line_level--;        if (buf->line_level) {
        snprintf(szPrompt, sizeof szPrompt, "%s{%d}> ", buf->line_porigin, buf->line_level);                buf->line_level--;
        cli_setPrompt(buf, szPrompt);                snprintf(szPrompt, sizeof szPrompt, "%s{%d}> ", buf->line_porigin, buf->line_level);
        cli_Printf(buf, "Enter to config level %d\n", buf->line_level);                cli_setPrompt(buf, szPrompt);
        return RETCODE_OK;                cli_Printf(buf, "Enter to config level %d\n", buf->line_level);
                 return RETCODE_OK;
         } else
                 return RETCODE_EOF;
 }  }
   
 /*  /*
Line 186  int Line 190  int
 cli_Cmd_Top(void * __restrict cli_buffer, int idx, char ** __restrict args)  cli_Cmd_Top(void * __restrict cli_buffer, int idx, char ** __restrict args)
 {  {
         linebuffer_t *buf = cli_buffer;          linebuffer_t *buf = cli_buffer;
        char szPrompt[STRSIZ] = {[0 ... STRSIZ - 1] = 0};        char szPrompt[STRSIZ + 16] = {[0 ... STRSIZ + 15] = 0};
   
         buf->line_level ^= buf->line_level;          buf->line_level ^= buf->line_level;
         snprintf(szPrompt, sizeof szPrompt, "%s{%d}> ", buf->line_porigin, buf->line_level);          snprintf(szPrompt, sizeof szPrompt, "%s{%d}> ", buf->line_porigin, buf->line_level);

Removed from v.1.9.14.1  
changed lines
  Added in v.1.13


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