From 76d51110e4dd7689acac898443364a13d8f9b62d Mon Sep 17 00:00:00 2001 From: Jakub Adam Date: Tue, 10 May 2016 08:47:25 +0200 Subject: [PATCH] appshare: Skype for Business compatibility Ignore H.264 desktop video in favor of RDP session. --- src/core/sipe-appshare.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/src/core/sipe-appshare.c b/src/core/sipe-appshare.c index bcc6f8b0..480079d2 100644 --- a/src/core/sipe-appshare.c +++ b/src/core/sipe-appshare.c @@ -524,9 +524,29 @@ process_incoming_invite_appshare(struct sipe_core_private *sipe_private, struct sipe_media_call *call; struct sipe_media_stream *stream; struct sipe_appshare *appshare; + struct sdpmsg *sdpmsg; + GSList *i; - call = process_incoming_invite_call(sipe_private, msg, - sdpmsg_parse_msg(msg->body)); + sdpmsg = sdpmsg_parse_msg(msg->body); + + /* Skype for Business compatibility - ignore desktop video. */ + i = sdpmsg->media; + while (i) { + struct sdpmedia *media = i->data; + const gchar *label; + + i = i->next; + + label = sipe_utils_nameval_find(media->attributes, "label"); + + if (sipe_strequal(media->name, "video") && + sipe_strequal(label, "applicationsharing-video")) { + sdpmsg->media = g_slist_remove(sdpmsg->media, media); + sdpmedia_free(media); + } + } + + call = process_incoming_invite_call(sipe_private, msg, sdpmsg); if (!call) { return; } -- 2.11.4.GIT