|
@@ -255,18 +255,22 @@ int StoreUsrConfigData(struct SysConfigData *UsrData)
|
|
|
{
|
|
|
memset(BufTmp,0,MtdBlockSize);
|
|
|
memcpy(BufTmp,ptr,sizeof(struct SysConfigData));
|
|
|
+
|
|
|
for(i=0;i<MtdBlockSize-4;i++)
|
|
|
- Chk+=*(ptr+i);
|
|
|
+ Chk+=*(BufTmp+i);
|
|
|
+
|
|
|
memcpy( BufTmp+MtdBlockSize-4,&Chk,4);
|
|
|
+
|
|
|
fd = open("/dev/mtdblock10", O_RDWR);
|
|
|
- if (fd > 0)
|
|
|
+
|
|
|
+ if (fd>0)
|
|
|
{
|
|
|
wrd=write(fd, BufTmp, MtdBlockSize);
|
|
|
close(fd);
|
|
|
if(wrd>=MtdBlockSize)
|
|
|
{
|
|
|
fd = open("/dev/mtdblock11", O_RDWR);
|
|
|
- if (fd > 0)
|
|
|
+ if (fd>0)
|
|
|
{
|
|
|
wrd=write(fd, BufTmp, MtdBlockSize);
|
|
|
close(fd);
|
|
@@ -275,19 +279,18 @@ int StoreUsrConfigData(struct SysConfigData *UsrData)
|
|
|
DEBUG_ERROR("write /dev/mtdblock11(backup) NG\r\n");
|
|
|
result = FAIL;
|
|
|
}
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- DEBUG_ERROR("open /dev/mtdblock11(backup) NG\r\n");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ DEBUG_ERROR("open /dev/mtdblock11(backup) NG\r\n");
|
|
|
result = FAIL;
|
|
|
- }
|
|
|
+ }
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
DEBUG_ERROR("write /dev/mtdblock10 NG\r\n");
|
|
|
result = FAIL;
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
else
|
|
|
{
|
|
@@ -298,14 +301,16 @@ int StoreUsrConfigData(struct SysConfigData *UsrData)
|
|
|
else
|
|
|
{
|
|
|
DEBUG_ERROR("alloc BlockSize NG\r\n");
|
|
|
- result = FAIL;
|
|
|
+ result = FAIL;
|
|
|
}
|
|
|
+
|
|
|
if(BufTmp!=NULL)
|
|
|
free(BufTmp);
|
|
|
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
//================================================
|
|
|
// Main process
|
|
|
//================================================
|