neels has uploaded this change for review. ( 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, 2 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/53/29853/1
diff --git a/src/libosmo-mgcp/mgcp_iuup.c b/src/libosmo-mgcp/mgcp_iuup.c index 90021f3..e3b7efa 100644 --- a/src/libosmo-mgcp/mgcp_iuup.c +++ b/src/libosmo-mgcp/mgcp_iuup.c @@ -98,7 +98,8 @@ 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) + return -1;
/* TODO: cache this somehow */ for (i = 0; i < ARRAY_SIZE(irp->u.status.u.initialization.rfci); i++) {