[Bugfix][T106BUG-395][T106BUG-381]fix version error and pin error
Only Configure:No,
Affected branch:master,
Affected module:sim
Is it affected on both ZXIC and MTK:only ZXIC,
Self-test:Yes,
Doc Update:NO.
Change-Id: I4675071fc7c2564997a97e3cbccf1ac0ab57f50e
diff --git a/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sim-demo/files/lynq-qser-sim-demo.cpp b/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sim-demo/files/lynq-qser-sim-demo.cpp
index 2736f29..c5b61b6 100755
--- a/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sim-demo/files/lynq-qser-sim-demo.cpp
+++ b/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sim-demo/files/lynq-qser-sim-demo.cpp
@@ -308,7 +308,8 @@
char new_pin[BUF_PIN] = {0};
printf("input new pin\n");
scanf("%s", new_pin);
-
+ memset(pt_info.puk_value, 0, sizeof(pt_info.puk_value));
+ memset(pt_info.new_pin_value, 0, sizeof(pt_info.new_pin_value));
strncpy(pt_info.puk_value, puk, BUF_PIN);
strncpy(pt_info.new_pin_value, new_pin, BUF_PIN);
printf("pt_info.puk_value = %s, puk = %s\n", pt_info.puk_value, puk);
@@ -416,119 +417,149 @@
//qser_deinit_sim
case 10:
{
- char imei[BUF_SIZE]="";
- qser_sim_getimei = (int(*)(sim_client_handle_type h_sim, char *imei))dlsym(dlHandle_sim,"qser_sim_getimei");
- if(NULL != qser_sim_getimei)
- {
- res = qser_sim_getimei(h_sim, imei);
- if(res == 0)
- {
- printf("get imei success!!!\n");
- }else{
- printf("get imei error, res = %d\n", res);
- }
- }else{
- printf("qser_sim_getimei dlsym error\n");
+ if(flag_init == 0){
+ printf("must init first\n");
}
- flag_init = 0;
- break;
+ else{
+ char imei[BUF_SIZE]="";
+ qser_sim_getimei = (int(*)(sim_client_handle_type h_sim, char *imei))dlsym(dlHandle_sim,"qser_sim_getimei");
+ if(NULL != qser_sim_getimei)
+ {
+ res = qser_sim_getimei(h_sim, imei);
+ if(res == 0)
+ {
+ printf("get imei success!!!\n");
+ }else{
+ printf("get imei error, res = %d\n", res);
+ }
+ }else{
+ printf("qser_sim_getimei dlsym error\n");
+ }
+ }
+ //flag_init = 0;
+ break;
}
//qser_get_imei_and_sv
case 11:
{
- char imei[BUF_SIZE]="";
- char sv[BUF_SIZE]="";
- qser_get_imei_and_sv = (int(*)(sim_client_handle_type h_sim, char *imei, char *sv))dlsym(dlHandle_sim,"qser_get_imei_and_sv");
- if(NULL != qser_get_imei_and_sv)
- {
- res = qser_get_imei_and_sv(h_sim, imei, sv);
- if(res == 0)
- {
- printf("get imei and sv success!!!\n");
- }else{
- printf("get imei and sv error, res = %d\n", res);
- }
- }else{
- printf("qser_get_imei_and_sv dlsym error\n");
+ if(flag_init == 0){
+ printf("must init first\n");
}
- flag_init = 0;
+ else{
+ char imei[BUF_SIZE]="";
+ char sv[BUF_SIZE]="";
+ qser_get_imei_and_sv = (int(*)(sim_client_handle_type h_sim, char *imei, char *sv))dlsym(dlHandle_sim,"qser_get_imei_and_sv");
+ if(NULL != qser_get_imei_and_sv)
+ {
+ res = qser_get_imei_and_sv(h_sim, imei, sv);
+ if(res == 0)
+ {
+ printf("get imei and sv success!!!\n");
+ }else{
+ printf("get imei and sv error, res = %d\n", res);
+ }
+ }else{
+ printf("qser_get_imei_and_sv dlsym error\n");
+ }
+ }
+ //flag_init = 0;
break;
}
//qser_reset_modem
case 12:
{
- qser_reset_modem = (int(*)(sim_client_handle_type h_sim))dlsym(dlHandle_sim,"qser_reset_modem");
- if(NULL != qser_reset_modem)
- {
- res = qser_reset_modem(h_sim);
- if(res == 0)
- {
- printf("reset modem success!!!\n");
- }else{
- printf("reset modem error, res = %d\n", res);
- }
- }else{
- printf("qser_reset_modem dlsym error\n");
+ if(flag_init == 0){
+ printf("must init first\n");
}
- flag_init = 0;
+ else{
+ qser_reset_modem = (int(*)(sim_client_handle_type h_sim))dlsym(dlHandle_sim,"qser_reset_modem");
+ if(NULL != qser_reset_modem)
+ {
+ res = qser_reset_modem(h_sim);
+ if(res == 0)
+ {
+ printf("reset modem success!!!\n");
+ }else{
+ printf("reset modem error, res = %d\n", res);
+ }
+ }else{
+ printf("qser_reset_modem dlsym error\n");
+ }
+ }
+ //flag_init = 0;
break;
}
//qser_get_version
case 13:
{
- char buf[VER_SIZE]="";
- qser_get_version = (int(*)(sim_client_handle_type h_sim, char *buf))dlsym(dlHandle_sim,"qser_get_version");
- if(NULL != qser_get_version)
- {
- res = qser_get_version(h_sim, buf);
- if(res == 0)
- {
- printf("get version success!!!\n");
- }else{
- printf("get version error, res = %d\n", res);
- }
- }else{
- printf("qser_get_version dlsym error\n");
+ if(flag_init == 0){
+ printf("must init first\n");
}
- flag_init = 0;
+ else{
+ char buf[VER_SIZE]="";
+ qser_get_version = (int(*)(sim_client_handle_type h_sim, char *buf))dlsym(dlHandle_sim,"qser_get_version");
+ if(NULL != qser_get_version)
+ {
+ res = qser_get_version(h_sim, buf);
+ if(res == 0)
+ {
+ printf("get version success!!!\n");
+ }else{
+ printf("get version error, res = %d\n", res);
+ }
+ }else{
+ printf("qser_get_version dlsym error\n");
+ }
+ }
+ //flag_init = 0;
break;
}
//qser_reset_sim
case 14:
{
- qser_reset_sim = (int(*)(sim_client_handle_type h_sim))dlsym(dlHandle_sim,"qser_reset_sim");
- if(NULL != qser_reset_sim)
- {
- res = qser_reset_sim(h_sim);
- if(res == 0)
- {
- printf("reset sim success!!!\n");
- }else{
- printf("reset sim error, res = %d\n", res);
- }
- }else{
- printf("qser_reset_sim dlsym error\n");
+ if(flag_init == 0){
+ printf("must init first\n");
}
- flag_init = 0;
+ else{
+ qser_reset_sim = (int(*)(sim_client_handle_type h_sim))dlsym(dlHandle_sim,"qser_reset_sim");
+ if(NULL != qser_reset_sim)
+ {
+ res = qser_reset_sim(h_sim);
+ if(res == 0)
+ {
+ printf("reset sim success!!!\n");
+ }else{
+ printf("reset sim error, res = %d\n", res);
+ }
+ }else{
+ printf("qser_reset_sim dlsym error\n");
+ }
+ }
+ //flag_init = 0;
break;
}
//qser_deinit_sim
case 15:
{
- qser_sim_client_deinit = (int(*)(sim_client_handle_type h_sim))dlsym(dlHandle_sim,"qser_sim_client_deinit");
- if(NULL != qser_sim_client_deinit)
- {
- res = qser_sim_client_deinit(h_sim);
- if(res == 0)
- {
- printf("sim deinit success is!!!\n");
- }else{
- printf("sim deint errors, res = %d\n", res);
- }
- }else{
- printf("qser_sim_client_deinit dlsym error\n");
+ if(flag_init == 0){
+ printf("must init first\n");
}
- flag_init = 0;
+ else{
+ qser_sim_client_deinit = (int(*)(sim_client_handle_type h_sim))dlsym(dlHandle_sim,"qser_sim_client_deinit");
+ if(NULL != qser_sim_client_deinit)
+ {
+ res = qser_sim_client_deinit(h_sim);
+ if(res == 0)
+ {
+ printf("sim deinit success is!!!\n");
+ }else{
+ printf("sim deint errors, res = %d\n", res);
+ }
+ }else{
+ printf("qser_sim_client_deinit dlsym error\n");
+ }
+ }
+ //flag_init = 0;
break;
}
default:
diff --git a/cap/zx297520v3/src/lynq/lib/liblynq-sim/src/lynq_sim.cpp b/cap/zx297520v3/src/lynq/lib/liblynq-sim/src/lynq_sim.cpp
index e62153a..ce281e4 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-sim/src/lynq_sim.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-sim/src/lynq_sim.cpp
@@ -926,6 +926,10 @@
{
FILE * fp;
char buffer[128];
+ if(g_lynq_sim_init_flag == 0)
+ {
+ return -1;
+ }
sprintf(buffer, "%s", "uci get lynq_uci_ro.lynq_version.LYNQ_SW_VERSION");
fp = popen(buffer, "r");
fgets(buffer, sizeof(buffer), fp);