neels has submitted this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/29853 )
Change subject: AMR->IuUP: do not crash on AMR data before IuUP Init ...................................................................... AMR->IuUP: do not crash on AMR data before IuUP Init When translating AMR to IuUP, when AMR data arrives before the IuUP side has negotiated an IuUP Initialization, do not crash osmo-mgw, but return failure and drop the AMR packet. As soon as IuUP Initialization occured and RFCIs are defined, the AMR starts to pass through to the IuUP side. Related: SYS#5092 Change-Id: Id9efb7e523d8d9af988e4bf4f5e925839204f934 --- M src/libosmo-mgcp/mgcp_iuup.c 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/libosmo-mgcp/mgcp_iuup.c b/src/libosmo-mgcp/mgcp_iuup.c index 90021f3..15d674d 100644 --- a/src/libosmo-mgcp/mgcp_iuup.c +++ b/src/libosmo-mgcp/mgcp_iuup.c @@ -98,7 +98,11 @@ uint8_t rfci_cnt = 0; unsigned match_bytes = (unsigned)osmo_amr_bytes(ft); struct osmo_iuup_rnl_prim *irp = conn_rtp->iuup.init_ind; - OSMO_ASSERT(irp); + if (!irp) { + /* No IuUP Initialization has occured on the IuUP side yet. Return error and drop the RTP data, until + * the IuUP Initialization has configured the link. */ + return -1; + } /* TODO: cache this somehow */ for (i = 0; i < ARRAY_SIZE(irp->u.status.u.initialization.rfci); i++) { null-- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/29853 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: Id9efb7e523d8d9af988e4bf4f5e925839204f934 Gerrit-Change-Number: 29853 Gerrit-PatchSet: 2 Gerrit-Owner: neels <nhofm...@sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanits...@sysmocom.de> Gerrit-Reviewer: laforge <lafo...@osmocom.org> Gerrit-Reviewer: pespin <pes...@sysmocom.de> Gerrit-MessageType: merged