Diff for /embedtools/src/ub_env.c between versions 1.1.2.11 and 1.1.2.12

version 1.1.2.11, 2014/01/29 10:19:48 version 1.1.2.12, 2014/01/29 13:31:13
Line 4 Line 4
   
 env_t *env;  env_t *env;
   
   
 static int  static int
 ub_flash_io(const char *csSec, int mode)  ub_flash_io(const char *csSec, int mode)
 {  {
         int f, l, rlen;          int f, l, rlen;
         const char *str;          const char *str;
        size_t siz;        size_t siz, esiz;
         ait_val_t v;          ait_val_t v;
           u_int crc;
   
         FTRACE(4);          FTRACE(4);
   
        str = cfg_getAttribute(&cfg, csSec, "size");        str = cfg_getAttribute(&cfg, csSec, "drive_size");
         siz = strtol(str, NULL, 0);          siz = strtol(str, NULL, 0);
         if (!siz)          if (!siz)
                 return -1;                  return -1;
        str = cfg_getAttribute(&cfg, csSec, "drive");        str = cfg_getAttribute(&cfg, csSec, "env_size");
         if (!str)
                 esiz = siz - sizeof env->env_crc;
         else
                 esiz = strtol(str, NULL, 0);
         str = cfg_getAttribute(&cfg, csSec, "drive_name");
         if (!str) {          if (!str) {
                 printf("Error:: drive not found!\n");                  printf("Error:: drive not found!\n");
                 return -1;                  return -1;
Line 57  ub_flash_io(const char *csSec, int mode) Line 62  ub_flash_io(const char *csSec, int mode)
         else          else
                 VERB(3) printf("Readed %d bytes\n", rlen);                  VERB(3) printf("Readed %d bytes\n", rlen);
   
           crc = crc32(0, (u_char*) env->env_data, esiz);
           if (crc != env->env_crc)
                   VERB(1) printf("Warning:: Flash crc32 0x%x != 0x%x - "
                                   "Bad CRC, using default environment\n", env->env_crc, crc);
   
         close(f);          close(f);
         close(l);          close(l);
         unlink(AIT_GET_STR(&v));          unlink(AIT_GET_STR(&v));
Line 84  ub_load(const char *csSec) Line 94  ub_load(const char *csSec)
   
         FTRACE(4);          FTRACE(4);
   
        str = cfg_getAttribute(&cfg, csSec, "size");        str = cfg_getAttribute(&cfg, csSec, "drive_size");
         siz = strtol(str, NULL, 0);          siz = strtol(str, NULL, 0);
         if (!siz)          if (!siz)
                 return -1;                  return -1;
Line 116  ub_getenv(const char *csSec, const char *csName) Line 126  ub_getenv(const char *csSec, const char *csName)
   
         FTRACE(3);          FTRACE(3);
   
        str = cfg_getAttribute(&cfg, csSec, "size");        str = cfg_getAttribute(&cfg, csSec, "env_size");
        if (!str)        if (!str) {
                return NULL;                str = cfg_getAttribute(&cfg, csSec, "drive_size");
                 if (!str)
                         return -1;
         }
         dlen = strtol(str, NULL, 0);          dlen = strtol(str, NULL, 0);
         if (!dlen)          if (!dlen)
                 return NULL;                  return NULL;
Line 149  ub_setenv(const char *csSec, const char *csName, const Line 162  ub_setenv(const char *csSec, const char *csName, const
   
         FTRACE(3);          FTRACE(3);
   
        str = cfg_getAttribute(&cfg, csSec, "size");        str = cfg_getAttribute(&cfg, csSec, "env_size");
        if (!str)        if (!str) {
                return -1;                str = cfg_getAttribute(&cfg, csSec, "drive_size");
                 if (!str)
                         return -1;
         }
         dlen = strtol(str, NULL, 0);          dlen = strtol(str, NULL, 0);
         if (!dlen)          if (!dlen)
                 return -1;                  return -1;
Line 224  ub_env(const char *csSec) Line 240  ub_env(const char *csSec)
   
         FTRACE(3);          FTRACE(3);
   
        str = cfg_getAttribute(&cfg, csSec, "size");        str = cfg_getAttribute(&cfg, csSec, "env_size");
        if (!str)        if (!str) {
                return -1;                str = cfg_getAttribute(&cfg, csSec, "drive_size");
                 if (!str)
                         return -1;
         }
         dlen = strtol(str, NULL, 0);          dlen = strtol(str, NULL, 0);
         if (!dlen)          if (!dlen)
                 return -1;                  return -1;

Removed from v.1.1.2.11  
changed lines
  Added in v.1.1.2.12


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