ASCI: Add function to receive VGCS/VBS messages from BSS

A voice group/broadcast call has no SCCP connection that is related 1:1
to a calling or called subscriber. Instead there are multiple connections
between MSC and BSS. Some of them control the uplink for each BSS and
some of them assign the channels for each BTS.

SCCP connections are maintained by the VGCS call control. Message from the
RAN are directly forwarded to the VGCS call control.

Change-Id: Ie4a2f19ba75140a6f2de02b709597239c01f02a2
Related: OS#4854
diff --git a/include/osmocom/msc/msc_a.h b/include/osmocom/msc/msc_a.h
index 5256744..bef7417 100644
--- a/include/osmocom/msc/msc_a.h
+++ b/include/osmocom/msc/msc_a.h
@@ -37,6 +37,8 @@
 #include <osmocom/msc/neighbor_ident.h>
 
 struct ran_infra;
+struct vgcs_bss;
+struct vgcs_bss_cell;
 
 #define MSC_A_USE_LOCATION_UPDATING	"lu"
 #define MSC_A_USE_CM_SERVICE_CC	"cm_service_cc"
@@ -220,6 +222,9 @@
 void msc_a_release_cn(struct msc_a *msc_a);
 void msc_a_release_mo(struct msc_a *msc_a, enum gsm48_gsm_cause gsm_cause);
 
+int msc_a_rx_vgcs_bss(struct vgcs_bss *bss, struct ran_conn *from_conn, struct msgb *msg);
+int msc_a_rx_vgcs_cell(struct vgcs_bss_cell *cell, struct ran_conn *from_conn, struct msgb *msg);
+
 int msc_a_ran_decode_cb(struct osmo_fsm_inst *msc_a_fi, void *data, const struct ran_msg *msg);
 
 int msc_a_vlr_set_cipher_mode(void *_msc_a, bool umts_aka, bool retrieve_imeisv);