Add initial CSD support with external MNCC
Implement and use CSD bearer service logic (with similar audio codec code):
* csd_filter (codec_filter)
* csd_bs (sdp_audio_codec)
* csd_bs_list (sdp_audio_codecs)
Related: OS#4394
Change-Id: Ide8b8321e0401dcbe35da2ec9cee0abca821d99a
diff --git a/include/osmocom/msc/sdp_msg.h b/include/osmocom/msc/sdp_msg.h
index 1b905b7..e62f22b 100644
--- a/include/osmocom/msc/sdp_msg.h
+++ b/include/osmocom/msc/sdp_msg.h
@@ -4,6 +4,8 @@
#include <osmocom/core/utils.h>
#include <osmocom/core/sockaddr_str.h>
+#include <osmocom/msc/csd_bs.h>
+
extern const struct value_string sdp_msg_payload_type_names[];
static inline const char *sdp_msg_payload_type_name(unsigned int payload_type)
{ return get_value_string(sdp_msg_payload_type_names, payload_type); }
@@ -36,6 +38,7 @@
unsigned int ptime;
enum sdp_mode_e mode;
struct sdp_audio_codecs audio_codecs;
+ struct csd_bs_list bearer_services;
};
#define foreach_sdp_audio_codec(/* struct sdp_audio_codec* */ CODEC, \
@@ -80,3 +83,5 @@
int sdp_msg_to_str_buf(char *buf, size_t buflen, const struct sdp_msg *sdp);
char *sdp_msg_to_str_c(void *ctx, const struct sdp_msg *sdp);
const char *sdp_msg_to_str(const struct sdp_msg *sdp);
+
+void sdp_audio_codecs_set_csd(struct sdp_audio_codecs *ac);