fix ledger update

This commit is contained in:
lnk
2025-03-13 16:35:19 +08:00
parent f2bec8c94e
commit 97e4da3df7
3 changed files with 104 additions and 22 deletions

View File

@@ -832,6 +832,23 @@ void check_3s_config()
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//lnk20250114<31><34><EFBFBD><EFBFBD>ʵʱ<CAB5><CAB1><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD>Ϣ
int isValidModelId(const char* model_id) {
size_t i;
if (model_id == NULL) return 0; // NULL <20><>Ч
size_t len = strlen(model_id);
if (len < 4) return 0; // <20><><EFBFBD><EFBFBD> < 4 <20><>Ч
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>ȫ<EFBFBD>ǿո<C7BF>
for (i = 0; i < len; i++) {
if (!isspace((unsigned char)model_id[i])) {
return 1; // ֻҪ<D6BB><D2AA><EFBFBD><EFBFBD><EFBFBD>ǿո<C7BF><D5B8>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǺϷ<C7BA><CFB7><EFBFBD>
}
}
return 0; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ո<EFBFBD><D5B8><EFBFBD><EFBFBD><EFBFBD>Ч
}
void process_ledger_update(trigger_update_xml_t *ledger_update_xml)
{
int i,j;
@@ -969,17 +986,18 @@ void process_ledger_update(trigger_update_xml_t *ledger_update_xml)
//3-д<><D0B4>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>///////////////////////////////////
//4-<2D><><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD>ļ<EFBFBD>//////////////////////////////
char model[64] = {0};
char model[64];
// <20><>ȡģ<C8A1><C4A3>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ񷵻<C7B7> NULL
char* model_id = parse_model_cfg_web_one(ied);//<2F><EFBFBD><E6B4A2>/FeProject/dat/
if (model_id != NULL) {
if (isValidModelId(model_id)) { //lnk20250313<31><33>ֹ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD>ļ<EFBFBD>
// <20><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD> model <20><><EFBFBD><EFBFBD>
strncpy(model, model_id, sizeof(model) - 1);
model[sizeof(model) - 1] = '\0'; // ȷ<><C8B7><EFBFBD><EFBFBD> null <20><>β
printf("ledger Model ID: %s\n", model);
} else {
printf("ledger No model ID found.\n");
printf("ledger No model ID found.quit\n");
return ;
}
char full_path[128];
snprintf(full_path, sizeof(full_path), "/FeProject/dat/%s.xml", model); // ƴ<><C6B4>·<EFBFBD><C2B7>