in ran_msg, return gsm0808_speech_codec (intra-MSC)

Do not convert to enum mgcp_codecs, but directly pass the
gsm0808_speech_codec IE from the A interface to codecs handling.

For Iu:
- RAN side: use ran_infra.force_mgw_codecs_to_ran to keep the MGW
  endpoint towards RAN on IUFP.
- CN side: introduce flag ran_msg.assignment_complete.codec_with_iuup,
  so to decide whether to forward IUFP towards CN, we don't need to test
  the RAN type, but use the flag from the ran_msg implementation.

In msc_vlr_tests, use the SDP codec string instead of enum
mgcp_codecs.

So far limit to intra-MSC related messaging, adjusting inter-MSC
handover follows in a separate patch.

Change-Id: Ia666cb697fbd140d7239089628faed93860ce671
diff --git a/include/osmocom/msc/ran_msg.h b/include/osmocom/msc/ran_msg.h
index 32b24a0..d6b1e75 100644
--- a/include/osmocom/msc/ran_msg.h
+++ b/include/osmocom/msc/ran_msg.h
@@ -240,7 +240,8 @@
 		struct {
 			struct osmo_sockaddr_str remote_rtp;
 			bool codec_present;
-			enum mgcp_codecs codec;
+			struct gsm0808_speech_codec codec;
+			bool codec_with_iuup;
 			const struct gsm0808_speech_codec_list *codec_list_bss_supported;
 			bool osmux_present;
 			uint8_t osmux_cid;