summaryrefslogtreecommitdiff
path: root/channels/chan_motif.c
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2012-09-12 20:54:38 +0000
committerJoshua Colp <jcolp@digium.com>2012-09-12 20:54:38 +0000
commit189249cc73d66948957884494ed23da738ab4cd1 (patch)
tree67bdc05f820456178af63fc4eed403bdac09f840 /channels/chan_motif.c
parent1e59e7ee08db3113c10e4736ada217f3091e37b7 (diff)
Skip any non-content information when looking for and handling content.
This fixes a bug with Jitsi and conference calling. Jitsi implements XEP-0298 which places some conference-info information in the session-initiate request which chan_motif did not expect to occur. ........ Merged revisions 372995 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@372996 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_motif.c')
-rw-r--r--channels/chan_motif.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/channels/chan_motif.c b/channels/chan_motif.c
index 55c0f5e0b..70629f4e0 100644
--- a/channels/chan_motif.c
+++ b/channels/chan_motif.c
@@ -2098,10 +2098,16 @@ static int jingle_interpret_content(struct jingle_session *session, ikspak *pak)
/* Look at the content in the session initiation */
for (content = iks_child(iks_child(pak->x)); content; content = iks_next(content)) {
- char *name = iks_find_attrib(content, "name");
+ char *name;
struct ast_rtp_instance *rtp = NULL;
iks *description, *transport;
+ if (strcmp(iks_name(content), "content")) {
+ continue;
+ }
+
+ name = iks_find_attrib(content, "name");
+
if (session->transport != JINGLE_TRANSPORT_GOOGLE_V1) {
/* If this content stanza has no name consider it invalid and move on */
if (ast_strlen_zero(name) && !(name = iks_find_attrib(content, "jin:name"))) {