added NULL termination for alpha_id 30/19630/1
authorJogi <ankit.jogi@samsung.com>
Tue, 15 Apr 2014 09:44:24 +0000 (15:14 +0530)
committerDongchul Lim <dc7.lim@samsung.com>
Thu, 17 Apr 2014 02:06:13 +0000 (11:06 +0900)
Change-Id: I375b1596645f02b0396a5c43485132b80ab1b6cf

include/co_sim.h
src/co_sim.c

index 42edefa..0916ecf 100644 (file)
@@ -328,7 +328,8 @@ gboolean tcore_sim_decode_sst(unsigned char *enc_sst, int enc_sst_len, char *dec
 gboolean tcore_sim_decode_spn(unsigned char *enc_spn, int enc_spn_len, TelSimSpn *dec_spn);
 gboolean tcore_sim_decode_spdi(unsigned char *enc_spdi, int enc_spdi_len, TelSimSpPlmnList *dec_spdi);
 gboolean tcore_sim_decode_msisdn(unsigned char *enc_msisdn, int enc_msisdn_len, TelSimSubscriberInfo *dec_msisdn);
-gboolean tcore_sim_decode_xdn(unsigned char *enc_xdn, int enc_xdn_len, char *alpha_id, char *num);
+gboolean tcore_sim_decode_xdn(unsigned char *enc_xdn, int enc_xdn_len,
+       char *alpha_id, unsigned int *alpha_id_len, char *num);
 gboolean tcore_sim_encode_xdn(char *alpha_id, char *num, char *enc_xdn, int enc_xdn_len);
 gboolean tcore_sim_decode_ecc(unsigned char *enc_ecc, int enc_ecc_len, TelSimEccList *dec_ecc);
 gboolean tcore_sim_decode_ust(unsigned char *enc_ust, int enc_ust_len, char *dec_ust);
index 95fa20e..a6c962c 100644 (file)
@@ -618,9 +618,10 @@ gboolean tcore_sim_decode_msisdn(unsigned char *enc_msisdn,
        return TRUE;
 }
 
-gboolean tcore_sim_decode_xdn(unsigned char *enc_xdn, int enc_xdn_len, char *alpha_id, char *num)
+gboolean tcore_sim_decode_xdn(unsigned char *enc_xdn, int enc_xdn_len,
+       char *alpha_id, unsigned int *alpha_id_len, char *num)
 {
-       int X;  // alpha id max length
+       int X = 0;      // alpha id max length
        int bcd_byte;   // dialing number max length
 
        memset((void*) alpha_id, 0, TEL_SIM_XDN_ALPHA_ID_LEN_MAX);
@@ -635,9 +636,11 @@ gboolean tcore_sim_decode_xdn(unsigned char *enc_xdn, int enc_xdn_len, char *alp
        }
 
        X = enc_xdn_len - 14;   // get alpha id max length
+       *alpha_id_len = 0;
 
        if (X != 0) {
-               tcore_util_get_string((unsigned char *)alpha_id, enc_xdn, X);
+               *alpha_id_len = tcore_util_get_string((unsigned char *)alpha_id, enc_xdn, X);
+               dbg("alpha_id_len:[%d]", *alpha_id_len);
        }
 
        // get dialing number length