Diff for /embedtools/src/ube.c between versions 1.1.2.2 and 1.1.2.9

version 1.1.2.2, 2014/01/28 08:28:18 version 1.1.2.9, 2014/01/29 01:26:28
Line 2 Line 2
 #include "ub_env.h"  #include "ub_env.h"
   
   
   cfg_root_t cfg;
 int Verbose;  int Verbose;
 extern char compiled[], compiledby[], compilehost[];  extern char compiled[], compiledby[], compilehost[];
   
Line 13  Usage() Line 14  Usage()
                 "=== %s === %s@%s ===\n\n"                  "=== %s === %s@%s ===\n\n"
                 "  Syntax: ube [options] [set_value]\n"                  "  Syntax: ube [options] [set_value]\n"
                 "\n"                  "\n"
                   "\t-c <cfgfile>\tConfig file [default: /etc/ube.conf]\n"
                   "\t-d <descr>\tDrive description into config [default: 64K]\n"
                 "\t-g <name>\tSet parameter to value\n"                  "\t-g <name>\tSet parameter to value\n"
                 "\t-s <name>\tGet parameter value\n"                  "\t-s <name>\tGet parameter value\n"
                   "\t-q\t\tQuiet mode\n"
                 "\t-v\t\tVerbose ...\n"                  "\t-v\t\tVerbose ...\n"
                 "\n", compiled, compiledby, compilehost);                  "\n", compiled, compiledby, compilehost);
 }  }
Line 22  Usage() Line 26  Usage()
 int  int
 main(int argc, char **argv)  main(int argc, char **argv)
 {  {
        char ch, mode = 0, szName[STRSIZ], szVal[STRSIZ] = { 0 };        char ch, mode = 0, szName[STRSIZ] = { 0 }, szVal[STRSIZ] = { 0 }
              szCfgName[PATH_MAX], szSec[STRSIZ];
         const char *str;
         int ret = 0;
   
        while ((ch = getopt(argc, argv, "hvg:s:")) != -1)        strlcpy(szCfgName, UBE_CFGNAME, sizeof szCfgName);
         strlcpy(szSec, UBE_SECTION, sizeof szSec);
         while ((ch = getopt(argc, argv, "hvqg:s:c:d:")) != -1)
                 switch (ch) {                  switch (ch) {
                         case 'g':                          case 'g':
                                mode = 1;                                mode |= 1;
                                 strlcpy(szName, optarg, sizeof szName);                                  strlcpy(szName, optarg, sizeof szName);
                                 break;                                  break;
                         case 's':                          case 's':
                                mode = 2;                                mode |= 2;
                                 strlcpy(szName, optarg, sizeof szName);                                  strlcpy(szName, optarg, sizeof szName);
                                 break;                                  break;
                           case 'c':
                                   strlcpy(szCfgName, optarg, sizeof szCfgName);
                                   break;
                           case 'd':
                                   strlcpy(szSec, optarg, sizeof szSec);
                                   break;
                         case 'v':                          case 'v':
                                 Verbose++;                                  Verbose++;
                                 break;                                  break;
                           case 'q':
                                   mode |= 0x80;
                                   break;
                         case 'h':                          case 'h':
                         default:                          default:
                                 Usage();                                  Usage();
Line 44  main(int argc, char **argv) Line 62  main(int argc, char **argv)
                 }                  }
         argc -= optind;          argc -= optind;
         argv += optind;          argv += optind;
        if (mode == 2) {        if ((mode & 0x7f) == 2 && argc)
                if (!argc) {                strlcpy(szVal, *argv, sizeof szVal);
                        Usage();
                        return 1;        VERB(1) printf("u-boot-env: mode=0x%hhx name=%s value=%s\n", mode, szName, szVal);
                } else
                        strlcpy(szVal, *argv, sizeof szVal);        if (cfgLoadConfig(szCfgName, &cfg)) {
                 printf("Error:: cfgLoadConfig() #%d - %s\n", cfg_GetErrno(), cfg_GetError());
                 return 1;
         }          }
   
        VERB(1) printf("u-boot-env: name=%s value=%s\n", szName, szVal);        if (ub_load(szSec)) {
                 ret = 1;
                 goto end;
         }
   
        return 0;        if (!(mode & 0x7f)) {
                 VERB(2) printf("u-boot-env: list variables\n");
                 ub_env(szSec);
         }
 
         if ((mode & 0x7f) & 1) {
                 VERB(2) printf("u-boot-env: get variable %s\n", szName);
                 str = ub_getenv(szSec, szName);
                 if (!str) {
                         printf("Error:: Variable %s not found!\n", szName);
                         ret = 2;
                         goto end;
                 } else if (mode & 0x80)
                         printf("%s\n", str);
                 else
                         printf("%s=%s\n", szName, str);
         }
 
         if ((mode & 0x7f) & 2) {
                 VERB(2) printf("u-boot-env: set variable %s\n", szName);
                 ret = ub_setenv(szSec, szName, argc ? szVal : NULL);
                 if (ret) {
                         printf("Error:: Writing variable %s!\n", szName);
                         ret = 3;
                         goto end;
                 }
                 if (!(mode & 0x80))
                         printf("Done\n");
         }
 
 end:
         ub_unload();
         cfgUnloadConfig(&cfg);
         return ret;
 }  }

Removed from v.1.1.2.2  
changed lines
  Added in v.1.1.2.9


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