summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2016-03-24 17:35:42 +0100
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2016-03-24 17:35:42 +0100
commit4319330c411e059918d457593d76253757060ee4 (patch)
tree6cbd5c324c123819a47ce269c40808432acc33ff
parent4f8cafa5b089ba0cab33afc7752fa54bd8e57d36 (diff)
mncc: Extract the RTP port information before continuing
These need to be used by the SIP leg to move forward.
-rw-r--r--src/call.h8
-rw-r--r--src/mncc.c10
2 files changed, 17 insertions, 1 deletions
diff --git a/src/call.h b/src/call.h
index 5d50c1a..6c6bf51 100644
--- a/src/call.h
+++ b/src/call.h
@@ -34,6 +34,14 @@ struct call_leg {
struct call *call;
/**
+ * RTP data
+ */
+ uint32_t ip;
+ uint16_t port;
+ uint32_t payload_type;
+ uint32_t payload_msg_type;
+
+ /**
* Set by the call_leg implementation and will be called
* by the application to release the call.
*/
diff --git a/src/mncc.c b/src/mncc.c
index 907384f..ed2d065 100644
--- a/src/mncc.c
+++ b/src/mncc.c
@@ -192,9 +192,17 @@ static void check_rtp_create(struct mncc_connection *conn, char *buf, int rc)
return mncc_send(conn, MNCC_REJ_REQ, rtp->callref);
}
+ /* extract information about where the RTP is */
+ leg->base.ip = rtp->ip;
+ leg->base.port = rtp->port;
+ leg->base.payload_type = rtp->payload_type;
+ leg->base.payload_msg_type = rtp->payload_msg_type;
+
/* TODO.. now we can continue with the call */
LOGP(DMNCC, LOGL_DEBUG,
- "RTP set-up continuing with call with leg(%u)\n", leg->callref);
+ "RTP cnt leg(%u) ip(%u), port(%u) pt(%u) ptm(%u)\n",
+ leg->callref, leg->base.ip, leg->base.port,
+ leg->base.payload_type, leg->base.payload_msg_type);
stop_cmd_timer(leg, MNCC_RTP_CREATE);
continue_call(leg);
}