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);
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);
}
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