in ran_msg, return gsm0808_speech_codec (inter-MSC)
Get rid of enum mgcp_codecs in inter-MSC handover related code.
Change-Id: I9c649f98738a55b8637ae600d5cdf81099fd08e5
diff --git a/src/libmsc/ran_msg_a.c b/src/libmsc/ran_msg_a.c
index 56252f1..19402bc 100644
--- a/src/libmsc/ran_msg_a.c
+++ b/src/libmsc/ran_msg_a.c
@@ -671,13 +671,12 @@
}
if (ie_chosen_speech_version) {
- struct gsm0808_speech_codec sc;
ran_dec_msg.handover_request_ack.chosen_speech_version = ie_chosen_speech_version->val[0];
/* the codec may be extrapolated from this Speech Version or below from Speech Codec */
- gsm0808_speech_codec_from_chan_type(&sc, ran_dec_msg.handover_request_ack.chosen_speech_version);
- ran_dec_msg.handover_request_ack.codec_present = true;
- ran_dec_msg.handover_request_ack.codec = ran_a_mgcp_codec_from_sc(&sc);
+ if (gsm0808_speech_codec_from_chan_type(&ran_dec_msg.handover_request_ack.codec,
+ ran_dec_msg.handover_request_ack.chosen_speech_version) == 0)
+ ran_dec_msg.handover_request_ack.codec_present = true;
}
if (ie_aoip_transp_addr) {
@@ -692,14 +691,12 @@
}
if (ie_speech_codec) {
- struct gsm0808_speech_codec sc;
- if (gsm0808_dec_speech_codec(&sc, ie_speech_codec->val, ie_speech_codec->len) < 0)
+ /* the codec may be extrapolated from above Speech Version or from this Speech Codec */
+ if (gsm0808_dec_speech_codec(&ran_dec_msg.handover_request_ack.codec,
+ ie_speech_codec->val, ie_speech_codec->len) < 0)
LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode IE Speech Codec (Chosen)\n");
- else {
- /* the codec may be extrapolated from above Speech Version or from this Speech Codec */
+ else
ran_dec_msg.handover_request_ack.codec_present = true;
- ran_dec_msg.handover_request_ack.codec = ran_a_mgcp_codec_from_sc(&sc);
- }
}
return ran_decoded(ran_dec, &ran_dec_msg);