Add Multiple AT channels supported for ril api v2

Change-Id: I53f574c85d07bd7b8e0dd15d2e596d23c8772907
diff --git a/mbtk/test/libmbtk_ril/mbtk_ril_test.c b/mbtk/test/libmbtk_ril/mbtk_ril_test.c
index 1992bef..1f4ac7a 100755
--- a/mbtk/test/libmbtk_ril/mbtk_ril_test.c
+++ b/mbtk/test/libmbtk_ril/mbtk_ril_test.c
@@ -193,7 +193,8 @@
 #if RIL_DEBUG_THREAD
             thread_exit_with_wait();
 #endif
-            mbtk_ril_deinit();
+            mbtk_ril_close(MBTK_AT_PORT_DEF);
+            mbtk_ril_close(ATPORTTYPE_1);
             exit(0);
         }
         case SIGQUIT: // Ctrl + \ (类似 SIGINT ,但要产生core文件)
@@ -202,7 +203,8 @@
 #if RIL_DEBUG_THREAD
             thread_exit_with_wait();
 #endif
-            mbtk_ril_deinit();
+            mbtk_ril_close(MBTK_AT_PORT_DEF);
+            mbtk_ril_close(ATPORTTYPE_1);
             exit(0);
         }
         case SIGTERM:// 默认kill   (同 SIGKILL ,但 SIGKILL 不可捕获)
@@ -211,7 +213,8 @@
 #if RIL_DEBUG_THREAD
             thread_exit_with_wait();
 #endif
-            mbtk_ril_deinit();
+            mbtk_ril_close(MBTK_AT_PORT_DEF);
+            mbtk_ril_close(ATPORTTYPE_1);
             exit(0);
         }
         case SIGTSTP:// Ctrl + Z (同 SIGSTOP ,但 SIGSTOP 不可捕获)
@@ -291,8 +294,15 @@
     //test2(1, "254.128.0.0.0.0.0.0.0.1.0.2.144.5.212.239");
     //test2(1, "2400:3200::1");
 
-    if(mbtk_ril_init() != MBTK_RIL_ERR_SUCCESS)
-    {
+    mbtk_ril_handle* handle_def = mbtk_ril_open(MBTK_AT_PORT_DEF);
+    if(handle_def == NULL) {
+        printf("mbtk_ril_open(MBTK_AT_PORT_DEF/ATPORTTYPE_0) fail.");
+        return -1;
+    }
+
+    mbtk_ril_handle* handle_1 = mbtk_ril_open(ATPORTTYPE_1);
+    if(handle_1 == NULL) {
+        printf("mbtk_ril_open(ATPORTTYPE_1) fail.");
         return -1;
     }
 
@@ -352,7 +362,7 @@
             if(!strncasecmp(cmd, "version", 7))
             {
                 char version[50] = {0};
-                err = mbtk_version_get(version);
+                err = mbtk_version_get(handle_def, version);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -361,7 +371,7 @@
             }
             else if(!strncasecmp(cmd, "imei", 4)){
                 char imei[50] = {0};
-                err = mbtk_imei_get(imei);
+                err = mbtk_imei_get(handle_def, imei);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -369,7 +379,7 @@
                 }
             } else if(!strncasecmp(cmd, "sn", 2)){
                 char sn[50] = {0};
-                err = mbtk_sn_get(sn);
+                err = mbtk_sn_get(handle_def, sn);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -377,7 +387,7 @@
                 }
             } else if(!strncasecmp(cmd, "meid", 4)){
                 char meid[50] = {0};
-                err = mbtk_meid_get(meid);
+                err = mbtk_meid_get(handle_def, meid);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -386,7 +396,7 @@
             } else if(!strncasecmp(cmd, "volte", 5)){ // "volte" or "volte 0" or "volte 1"
                 int volte;
                 if(!strcasecmp(cmd, "volte")) { // Get
-                    err = mbtk_volte_state_get(&volte);
+                    err = mbtk_volte_state_get(handle_def, &volte);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -398,7 +408,7 @@
                     } else { // Close VoLTE
                         volte = 0;
                     }
-                    err = mbtk_volte_state_set(volte);
+                    err = mbtk_volte_state_set(handle_def, volte);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -408,7 +418,7 @@
             } else if(!strncasecmp(cmd, "radio", 5)){ // "radio" or "radio 0" or "radio 1"
                 mbtk_radio_state_enum radio;
                 if(!strcasecmp(cmd, "radio")) { // Get
-                    err = mbtk_radio_state_get(&radio);
+                    err = mbtk_radio_state_get(handle_def, &radio);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -422,7 +432,7 @@
                             reset = 0;
                         }
 
-                        err = mbtk_radio_state_set(radio, reset);
+                        err = mbtk_radio_state_set(handle_def, radio, reset);
                         if(err != MBTK_RIL_ERR_SUCCESS) {
                             printf("Error : %d\n", err);
                         } else {
@@ -433,14 +443,14 @@
             } else if(!strncasecmp(cmd, "temp", 4)){
                 int temp;
                 if(!strcasecmp(cmd, "temp 0")) {
-                    err = mbtk_temp_get(MBTK_TEMP_TYPE_SOC, &temp);
+                    err = mbtk_temp_get(handle_def, MBTK_TEMP_TYPE_SOC, &temp);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
                         printf("SOC : %d\n", temp);
                     }
                 } else if(!strcasecmp(cmd, "temp 1")) {
-                    err = mbtk_temp_get(MBTK_TEMP_TYPE_RF, &temp);
+                    err = mbtk_temp_get(handle_def, MBTK_TEMP_TYPE_RF, &temp);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -449,7 +459,7 @@
                 }
             } else if(!strncasecmp(cmd, "cell_time", 9)){
                 char time[128] = {0};
-                err = mbtk_cell_time_get(time);
+                err = mbtk_cell_time_get(handle_def, time);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -457,7 +467,7 @@
                 }
             } else if(!strncasecmp(cmd, "sim_state", 9)){
                 mbtk_sim_state_enum sim;
-                err = mbtk_sim_state_get(&sim);
+                err = mbtk_sim_state_get(handle_def, &sim);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -465,7 +475,7 @@
                 }
             } else if(!strncasecmp(cmd, "sim_type", 8)){
                 mbtk_sim_card_type_enum type;
-                err = mbtk_sim_type_get(&type);
+                err = mbtk_sim_type_get(handle_def, &type);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -473,7 +483,7 @@
                 }
             } else if(!strncasecmp(cmd, "imsi", 4)){
                 char imsi[50] = {0};
-                err = mbtk_imsi_get(imsi);
+                err = mbtk_imsi_get(handle_def, imsi);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -481,7 +491,7 @@
                 }
             } else if(!strncasecmp(cmd, "iccid", 5)){
                 char iccid[50] = {0};
-                err = mbtk_iccid_get(iccid);
+                err = mbtk_iccid_get(handle_def, iccid);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -489,7 +499,7 @@
                 }
             } else if(!strncasecmp(cmd, "pn", 2)){
                 char phone_number[50] = {0};
-                err = mbtk_phone_number_get(phone_number);
+                err = mbtk_phone_number_get(handle_def, phone_number);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -507,7 +517,7 @@
             */
             else if(!strncasecmp(cmd, "pin_state", 9)){
                 int lock_state;
-                err = mbtk_sim_lock_get(&lock_state);
+                err = mbtk_sim_lock_get(handle_def, &lock_state);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -515,7 +525,7 @@
                 }
             } else if(!strncasecmp(cmd, "pin_times", 9)){
                 mbtk_pin_puk_last_times_t times;
-                err = mbtk_sim_lock_retry_times_get(&times);
+                err = mbtk_sim_lock_retry_times_get(handle_def, &times);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -526,7 +536,7 @@
                 info.type = MBTK_SIM_LOCK_TYPE_ENABLE;
                 int count = sscanf(cmd, "pin_open %s", info.pin1);
                 if(count == 1) {
-                    err = mbtk_sim_lock_set(&info);
+                    err = mbtk_sim_lock_set(handle_def, &info);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -538,7 +548,7 @@
                 info.type = MBTK_SIM_LOCK_TYPE_DISABLE;
                 int count = sscanf(cmd, "pin_close %s", info.pin1);
                 if(count == 1) {
-                    err = mbtk_sim_lock_set(&info);
+                    err = mbtk_sim_lock_set(handle_def, &info);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -550,7 +560,7 @@
                 info.type = MBTK_SIM_LOCK_TYPE_CHANGE;
                 int count = sscanf(cmd, "pin_change %s %s", info.pin1, info.pin2);
                 if(count == 2) {
-                    err = mbtk_sim_lock_set(&info);
+                    err = mbtk_sim_lock_set(handle_def, &info);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -562,7 +572,7 @@
                 info.type = MBTK_SIM_LOCK_TYPE_VERIFY_PIN;
                 int count = sscanf(cmd, "pin_verify %s", info.pin1);
                 if(count == 1) {
-                    err = mbtk_sim_lock_set(&info);
+                    err = mbtk_sim_lock_set(handle_def, &info);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -574,7 +584,7 @@
                 info.type = MBTK_SIM_LOCK_TYPE_VERIFY_PUK;
                 int count = sscanf(cmd, "puk_verify %s %s", info.puk, info.pin1);
                 if(count == 2) {
-                    err = mbtk_sim_lock_set(&info);
+                    err = mbtk_sim_lock_set(handle_def, &info);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -583,7 +593,7 @@
                 }
             } else if(!strncasecmp(cmd, "plmn", 4)){
                 mbtk_plmn_info info;
-                err = mbtk_plmn_list_get(&info);
+                err = mbtk_plmn_list_get(handle_def, &info);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -597,7 +607,7 @@
             }
             else if(!strncasecmp(cmd, "avail_net", 9)){
                 mbtk_net_info_array_t net_list;
-                err = mbtk_available_net_get(&net_list);
+                err = mbtk_available_net_get(handle_1, &net_list);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -614,7 +624,7 @@
                 mbtk_net_info_t net;
                 memset(&net, 0, sizeof(mbtk_net_info_t));
                 if(!strcasecmp(cmd, "sel_mode")) { // Get
-                    err = mbtk_net_sel_mode_get(&net);
+                    err = mbtk_net_sel_mode_get(handle_def, &net);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -642,7 +652,7 @@
                         ptr++;
                     net.plmn = (uint32)atoi(ptr);
 
-                    err = mbtk_net_sel_mode_set(&net);
+                    err = mbtk_net_sel_mode_set(handle_def, &net);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -653,14 +663,14 @@
                 mbtk_band_info_t band;
                 memset(&band, 0x0, sizeof(mbtk_band_info_t));
                 if(!strcasecmp(cmd, "band")) { // Get
-                    err = mbtk_current_band_get(&band);
+                    err = mbtk_current_band_get(handle_def, &band);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
                         printf("Band : %d, %d, %d, %d, %d, %d\n", band.net_pref, band.gsm_band, band.umts_band, band.tdlte_band, band.fddlte_band, band.lte_ext_band);
                     }
                 } else if(!strcasecmp(cmd, "band support")) { // Get
-                    err = mbtk_support_band_get(&band);
+                    err = mbtk_support_band_get(handle_def, &band);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -702,7 +712,7 @@
                         ptr++;
                     band.fddlte_band = (uint32)atoi(ptr);
 
-                    err = mbtk_current_band_set(&band);
+                    err = mbtk_current_band_set(handle_def, &band);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -711,7 +721,7 @@
                 }
             } else if(!strncasecmp(cmd, "signal", 6)){
                 mbtk_signal_info_t signal;
-                err = mbtk_net_signal_get(&signal);
+                err = mbtk_net_signal_get(handle_def, &signal);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -720,7 +730,7 @@
                 }
             } else if(!strncasecmp(cmd, "reg", 3)){
                 mbtk_net_reg_info_t reg;
-                err = mbtk_net_reg_get(&reg);
+                err = mbtk_net_reg_get(handle_def, &reg);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -735,7 +745,7 @@
                     apn.cid = (mbtk_ril_cid_enum)cid;
                     apn.auto_save = (uint8)auto_save;
                 }
-                err = mbtk_apn_set(&apn);
+                err = mbtk_apn_set(handle_def, &apn);
                 if(err != MBTK_RIL_ERR_SUCCESS) {
                     printf("Error : %d\n", err);
                 } else {
@@ -745,7 +755,7 @@
             } else if(!strncasecmp(cmd, "apn", 3)){
                 if(!strcasecmp(cmd, "apn")) { // Get apn
                     mbtk_apn_info_array_t apns;
-                    err = mbtk_apn_get(&apns);
+                    err = mbtk_apn_get(handle_def, &apns);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -806,7 +816,7 @@
                         ptr++;
                     memcpy(apn.apn, ptr, strlen(ptr));
 #endif
-                    err = mbtk_apn_set(&apn);
+                    err = mbtk_apn_set(handle_def, &apn);
                     if(err != MBTK_RIL_ERR_SUCCESS) {
                         printf("Error : %d\n", err);
                     } else {
@@ -829,18 +839,18 @@
                     if(type == MBTK_DATA_CALL_START) {
                         int retry_interval[] = {5, 10, 15};
                         if(count == 5) {
-                            err = mbtk_data_call_start((mbtk_ril_cid_enum)cid, (mbtk_data_call_item_state_enum)auto_boot_call,
+                            err = mbtk_data_call_start(handle_def, (mbtk_ril_cid_enum)cid, (mbtk_data_call_item_state_enum)auto_boot_call,
                                 (mbtk_data_call_item_state_enum)def_route, (mbtk_data_call_item_state_enum)as_dns, retry_interval,
                                     3, 0, &ip);
                         } else {
-                            mbtk_data_call_start((mbtk_ril_cid_enum)cid, MBTK_DATA_CALL_ITEM_STATE_NON,
+                            err = mbtk_data_call_start(handle_def, (mbtk_ril_cid_enum)cid, MBTK_DATA_CALL_ITEM_STATE_NON,
                                 MBTK_DATA_CALL_ITEM_STATE_NON, MBTK_DATA_CALL_ITEM_STATE_NON, retry_interval,
                                     3, 0, &ip);
                         }
                     } else if(type == MBTK_DATA_CALL_STOP) {
-                        err = mbtk_data_call_stop((mbtk_ril_cid_enum)cid, 10);
+                        err = mbtk_data_call_stop(handle_def, (mbtk_ril_cid_enum)cid, 10);
                     } else {
-                        err = mbtk_data_call_state_get((mbtk_ril_cid_enum)cid, &ip);
+                        err = mbtk_data_call_state_get(handle_def, (mbtk_ril_cid_enum)cid, &ip);
                     }
                     if(err) {
                         printf("Error : %d\n", err);
@@ -935,7 +945,7 @@
 				if(ptr == NULL)
 				{
                     mbtk_cell_info_array_t cell;
-                    err = mbtk_cell_get(&cell);
+                    err = mbtk_cell_get(handle_def, &cell);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else if(cell.num > 0){
@@ -992,7 +1002,7 @@
 					printf("cell_mem: %s \n", mem);
 
 					memset(resp, 0, sizeof(resp));
-					err = mbtk_cell_set(mem, resp);
+					err = mbtk_cell_set(handle_def, mem, resp);
 					if(err) {
 						printf("Error : %d\n", err);
 					} else {
@@ -1010,14 +1020,14 @@
                 memset(phone_number,0,strlen(phone_number));
                 memcpy(phone_number,ptr,strlen(ptr));
                 printf("phone number is: %s\n",phone_number);
-                err = mbtk_call_start(phone_number);
+                err = mbtk_call_start(handle_def, phone_number);
                 if(err) {
                     printf("Error : %d\n", err);
                 } else {
                     printf("Call success.\n");
                 }
             } else if(!strncasecmp(cmd, "answer", 6)){
-                err = mbtk_call_answer();
+                err = mbtk_call_answer(handle_def);
                 if(err) {
                     printf("Error : %d\n", err);
                 } else {
@@ -1026,21 +1036,21 @@
             } else if(!strncasecmp(cmd, "hangup", 6)){
                 int phone_id = 1;
                 if(!strcasecmp(cmd, "hangup")) { // hang up all
-                    err = mbtk_call_hang();
+                    err = mbtk_call_hang(handle_def);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
                         printf("Call hang up all.\n");
                     }
                 } else if(!strcasecmp(cmd, "hangup 0")) {
-                    err = mbtk_waiting_or_background_call_hang();
+                    err = mbtk_waiting_or_background_call_hang(handle_def);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
                         printf("Call hang up waiting or background.\n");
                     }
                 } else if(!strcasecmp(cmd, "hangup 3")) {
-                    err = mbtk_foreground_resume_background_call_hang();
+                    err = mbtk_foreground_resume_background_call_hang(handle_def);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1054,7 +1064,7 @@
                     } else {
                         printf("Error : Invalid input\n");
                     }
-                    err = mbtk_a_call_hang(phone_id);
+                    err = mbtk_a_call_hang(handle_def, phone_id);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1063,7 +1073,7 @@
                 }
             } else if(!strncasecmp(cmd, "waitin", 6)){
                 mbtk_call_info_t reg;
-                err = mbtk_call_reg_get(&reg);
+                err = mbtk_call_reg_get(handle_def, &reg);
                 if(err) {
                     printf("Error : %d\n", err);
                 } else {
@@ -1077,7 +1087,7 @@
             } else if(!strncasecmp(cmd, "mute", 4)){ // "mute" or "mute 0" or "mute 1"
                 int mute;
                 if(!strcasecmp(cmd, "mute")) { // Get
-                    err = mbtk_mute_state_get(&mute);
+                    err = mbtk_mute_state_get(handle_def, &mute);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1089,7 +1099,7 @@
                     } else { // off mute
                         mute = 0;
                     }
-                    err = mbtk_mute_state_set(mute);
+                    err = mbtk_mute_state_set(handle_def, mute);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1114,7 +1124,7 @@
                     ptr++;
                 reg.duration = (uint32)atoi(ptr);
                 printf("DTMF character is: %c,%d\n",reg.character, reg.duration);
-                err = mbtk_dtmf_send(&reg);
+                err = mbtk_dtmf_send(handle_def, &reg);
                 if(err) {
                     printf("Error : %d\n", err);
                 } else {
@@ -1123,7 +1133,7 @@
             } else if(!strncasecmp(cmd, "cmgf", 4)){ // set mode 0: pud, 1:text
                 int mode;
                 if(!strcasecmp(cmd, "cmgf")) { // Get
-                    err = mbtk_sms_cmgf_get(&mode);
+                    err = mbtk_sms_cmgf_get(handle_def, &mode);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1137,7 +1147,7 @@
                     }
                     printf("mode:%d\n", mode);
                     sleep(2);
-                   err = mbtk_sms_cmgf_set(mode);
+                   err = mbtk_sms_cmgf_set(handle_def, mode);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1148,7 +1158,7 @@
 				char mem[100] = {0};
                 char resp[100] = {0};
                 if(!strcasecmp(cmd, "cpms")) { // Get
-                    err = mbtk_sms_cpms_get(mem);
+                    err = mbtk_sms_cpms_get(handle_def, mem);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1167,7 +1177,7 @@
                     printf("cpms 0\n");
 
                     memset(resp, 0, sizeof(resp));
-                    err = mbtk_sms_cpms_set(mem, resp);
+                    err = mbtk_sms_cpms_set(handle_def, mem, resp);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1205,7 +1215,7 @@
 				    }
 
 					memset(resp, 0, sizeof(resp));
-                    err = mbtk_sms_cmgs_set(cmgs, resp);
+                    err = mbtk_sms_cmgs_set(handle_def, cmgs, resp);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1230,7 +1240,7 @@
 				    }
 
 
-                    err = mbtk_sms_cmss_set(cmss, resp);
+                    err = mbtk_sms_cmss_set(handle_def, cmss, resp);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1255,7 +1265,7 @@
                     printf("1index:%d\n", index);
 
                     memset(resp, 0, sizeof(resp));
-                    err = mbtk_sms_cmgr_set(index, resp);
+                    err = mbtk_sms_cmgr_set(handle_def, index, resp);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1282,7 +1292,7 @@
 				    }
 
                     memset(resp, 0, sizeof(resp));
-                    err = mbtk_sms_cmgw_set(cmgw, resp);
+                    err = mbtk_sms_cmgw_set(handle_def, cmgw, resp);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1307,7 +1317,7 @@
 				    }
 
 
-                    err = mbtk_sms_cmgd_set(cmgd);
+                    err = mbtk_sms_cmgd_set(handle_def, cmgd);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1334,7 +1344,7 @@
 				    }
 
 					memset(resp, 0, sizeof(resp));
-                    err = mbtk_sms_cmgl_set(cmgl, resp);
+                    err = mbtk_sms_cmgl_set(handle_def, cmgl, resp);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1346,7 +1356,7 @@
                                                     //
                 char csca[128] = {0};
                 if(!strcasecmp(cmd, "csca")) { // Get
-                    err = mbtk_sms_csca_get(csca);
+                    err = mbtk_sms_csca_get(handle_def, csca);
                     if(err) {
                         printf("mbtk_sms_csca_get Error : %d\n", err);
                     } else {
@@ -1363,7 +1373,7 @@
 						printf("csca:%s\n", csca);
 				    }
 
-                    err = mbtk_sms_csca_set(csca);
+                    err = mbtk_sms_csca_set(handle_def, csca);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1387,7 +1397,7 @@
 						printf("csmp:%s\n", csmp);
 				    }
 
-                    err = mbtk_sms_csmp_set(csmp);
+                    err = mbtk_sms_csmp_set(handle_def, csmp);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1411,7 +1421,7 @@
 						printf("cscb:%s\n", cscb);
 				    }
 
-                    err = mbtk_sms_cscb_set(cscb);
+                    err = mbtk_sms_cscb_set(handle_def, cscb);
                     if(err) {
                         printf("Error : %d\n", err);
                     } else {
@@ -1499,7 +1509,8 @@
             else if(!strcasecmp(cmd, "h") || !strcasecmp(cmd, "help")) {
                 help();
             } else if(!strcasecmp(cmd, "q")) {
-                mbtk_ril_deinit();
+                mbtk_ril_close(MBTK_AT_PORT_DEF);
+                mbtk_ril_close(ATPORTTYPE_1);
                 break;
             } else {
                 printf("\n");
@@ -1511,7 +1522,9 @@
     thread_exit_with_wait();
 exit:
 #endif
-    mbtk_ril_deinit();
+    mbtk_ril_close(MBTK_AT_PORT_DEF);
+    mbtk_ril_close(ATPORTTYPE_1);
+
 
     LOG("Client exec complete.");