mgcp: Only allow transcoding on the virtual trunk
diff --git a/openbsc/src/mgcp/mgcp_protocol.c b/openbsc/src/mgcp/mgcp_protocol.c
index b95cc81..ba290dd 100644
--- a/openbsc/src/mgcp/mgcp_protocol.c
+++ b/openbsc/src/mgcp/mgcp_protocol.c
@@ -475,7 +475,7 @@
return -1;
}
- if (endp->cfg->transcoder_ip) {
+ if (endp->cfg->transcoder_ip && endp->tcfg->trunk_type == MGCP_TRUNK_VIRTUAL) {
if (allocate_port(endp, &endp->trans_net,
&endp->cfg->transcoder_ports,
mgcp_bind_trans_net_rtp_port) != 0) {
diff --git a/openbsc/src/mgcp/mgcp_vty.c b/openbsc/src/mgcp/mgcp_vty.c
index f71c17b..c299a98 100644
--- a/openbsc/src/mgcp/mgcp_vty.c
+++ b/openbsc/src/mgcp/mgcp_vty.c
@@ -672,7 +672,8 @@
endp->net_end.local_alloc = PORT_ALLOC_STATIC;
}
- if (cfg->transcoder_ip && cfg->transcoder_ports.mode == PORT_ALLOC_STATIC) {
+ if (trunk->trunk_type == MGCP_TRUNK_VIRTUAL &&
+ cfg->transcoder_ip && cfg->transcoder_ports.mode == PORT_ALLOC_STATIC) {
int rtp_port;
/* network side */