diff --git a/src/libosmo-mgcp/mgcp_network.c b/src/libosmo-mgcp/mgcp_network.c index d93e6954f..d6028a237 100644 --- a/src/libosmo-mgcp/mgcp_network.c +++ b/src/libosmo-mgcp/mgcp_network.c @@ -1537,12 +1537,11 @@ static int rx_rtp(struct msgb *msg) if (!trunk->rtp_accept_all && check_rtp_origin(conn_src, from_addr)) return -1; - /* If AMR is configured for the ingress connection and conversion of the - * framing mode (octet-aligned vs. bandwith-efficient) is explicitly - * defined, then we check if the incoming payload matches that - * expectation. */ + /* Handle AMR frame format conversion (octet-aligned vs. bandwith-efficient) */ if (mc->proto == MGCP_PROTO_RTP && mgcp_codec_amr_align_mode_is_indicated(conn_src->end.codec)) { + /* Make sure that the incoming AMR frame format matches the frame format that the call agent has + * communicated via SDP when the connection was created/modfied. */ int oa = amr_oa_check((char*)msgb_data(msg), msgb_length(msg)); if (oa < 0) return -1;