summaryrefslogtreecommitdiff
path: root/channels/chan_jingle.c
diff options
context:
space:
mode:
authorRussell Bryant <russell@russellbryant.com>2006-08-29 13:55:54 +0000
committerRussell Bryant <russell@russellbryant.com>2006-08-29 13:55:54 +0000
commit6aae631cc90c41ef404d0844728135a5d74ae51a (patch)
tree36015c257a68846807f850cf2575d5f960ec67e7 /channels/chan_jingle.c
parent1627052cf1349397393498906b1ae599b6089ae6 (diff)
update to reflect recent rtp changes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_jingle.c')
-rw-r--r--channels/chan_jingle.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/channels/chan_jingle.c b/channels/chan_jingle.c
index b296334ed..b3d7ea68a 100644
--- a/channels/chan_jingle.c
+++ b/channels/chan_jingle.c
@@ -185,7 +185,7 @@ static struct jingle_pvt *jingle_alloc(struct jingle *client, const char *from,
/*----- RTP interface functions */
static int jingle_set_rtp_peer(struct ast_channel *chan, struct ast_rtp *rtp,
struct ast_rtp *vrtp, int codecs, int nat_active);
-static struct ast_rtp *jingle_get_rtp_peer(struct ast_channel *chan);
+static enum ast_rtp_get_result jingle_get_rtp_peer(struct ast_channel *chan, struct ast_rtp **rtp);
static int jingle_get_codec(struct ast_channel *chan);
/*! \brief PBX interface structure for channel registration */
@@ -405,18 +405,22 @@ static int jingle_answer(struct ast_channel *ast)
return res;
}
-static struct ast_rtp *jingle_get_rtp_peer(struct ast_channel *chan)
+static enum ast_rtp_get_result jingle_get_rtp_peer(struct ast_channel *chan, struct ast_rtp **rtp)
{
struct jingle_pvt *p = chan->tech_pvt;
- struct ast_rtp *rtp = NULL;
+ enum ast_rtp_get_result res = AST_RTP_GET_FAILED;
if (!p)
- return NULL;
+ return res;
+
ast_mutex_lock(&p->lock);
- if (p->rtp)
- rtp = p->rtp;
+ if (p->rtp) {
+ *rtp = p->rtp;
+ res = AST_RTP_TRY_NATIVE;
+ }
ast_mutex_unlock(&p->lock);
- return rtp;
+
+ return res;
}
static int jingle_get_codec(struct ast_channel *chan)