tieto / sipe

A third-party Pidgin plugin for Microsoft Lync/OCS - clone of upstream http://repo.or.cz/w/siplcs.git
GNU General Public License v2.0
129 stars 24 forks source link

pidgin-sipe branch debian-jessie terminates screen share #149

Closed joakim-tjernlund closed 6 years ago

joakim-tjernlund commented 7 years ago

I typically get between two pidgin's who share screen after a few secs:

(15:23:12) sipe: parsing address out of <sip:Joakim.Tjernlund@infinera.com>;tag=2784337691;epid=f534b96dc346
(15:23:12) sipe: got sip:Joakim.Tjernlund@infinera.com
(15:23:12) sipe: sipe_media_state_changed_cb: 2 applicationsharing sip:joakim.tjernlund@infinera.com

[15:23:12:321] [14274:14343] [ERROR][com.freerdp.core.transport] - BIO_read returned a system error 11: Resource temporarily unavailable
[15:23:12:321] [14274:14343] [ERROR][com.freerdp.client.shadow] - Failed to check FreeRDP file descriptor
(15:23:12) sipe: sipe_media_state_changed_cb: 2 applicationsharing (null)

Our Lync server is far away and might have shaky network connection on and off

joakim-tjernlund commented 7 years ago

I note that on pidging sharing its screen I always get this "sip_sec_verify_signature .." msg just before the disconnect:

(12:40:01) sipe: Written: 2048

(12:40:01) sipe: Written: 2048

(12:40:01) sipe: Written: 1205

(12:40:01) sipe: Written: 1862

(12:40:01) sipe: Written: 10

(12:40:02) sipe: sip_sec_verify_signature: message is:<TLS-DSK><6529D45F><31><SIP Communications Service><sv-sfbfe-prd2.infinera.com><5D2EgD9F8aBD98iD32Dm3B7Dt3AA1b14EDx4713x><1><BYE><sip:Joakim.Tjernlund@infinera.com><1541021704><sip:testuser2.metro@infinera.com><257550495><><><> signature to verify is:37ef5ea1bf6e206415108e832ad9378df4f18bee
(12:40:02) sipe: sip_transport_input: signature of incoming message validated
(12:40:02) sipe: process_input_message: msg->response(0),msg->method(BYE)
(12:40:02) sipe: parsing address out of <sip:Joakim.Tjernlund@infinera.com>;tag=1541021704;epid=f534b96dc346
(12:40:02) sipe: got sip:Joakim.Tjernlund@infinera.com
[Thread 0x7fffb6eb7700 (LWP 13165) exited]
(12:40:02) sipe: sipe_media_state_changed_cb: 2 applicationsharing sip:joakim.tjernlund@infinera.com

[12:40:02:798] [13154:13174] [ERROR][com.freerdp.core.transport] - BIO_read returned a system error 11: Resource temporarily unavailable
[12:40:02:798] [13154:13174] [ERROR][com.freerdp.core.transport] - BIO_read returned a system error 11: Resource temporarily unavailable
[12:40:02:798] [13154:13174] [ERROR][com.freerdp.core.transport] - BIO_read returned a system error 11: Resource temporarily unavailable
[12:40:02:798] [13154:13174] [ERROR][com.freerdp.core.transport] - BIO_read returned a system error 11: Resource temporarily unavailable
[12:40:02:798] [13154:13174] [ERROR][com.freerdp.core.transport] - BIO_read returned a system error 11: Resource temporarily unavailable

If I wait about 1-2 mins after starting pidgin and then share it works much longer. It feels like sec msg handling stomps on the screen share

joakim-tjernlund commented 7 years ago

Pidgin-3.0 has the same problem too.

joakim-tjernlund commented 7 years ago

Finally some headway, it seems https://github.com/tieto/sipe/commit/24781d3c81ec3d7e92fb6d0ce74ed6d52c261171 (purple: don't use reliable nice agent ) is causing this.

--- pidgin-sipe-9999/src/purple/purple-media.c.org  2017-07-14 14:15:29.066503453 +0200
+++ pidgin-sipe-9999/src/purple/purple-media.c  2017-07-14 14:15:41.140585726 +0200
@@ -877,7 +877,7 @@
            ++params_cnt;

 // TODO detect if we need this at build time
-#if 0
+#if 1
            params[params_cnt].name = "reliable";
            g_value_init(&params[params_cnt].value, G_TYPE_BOOLEAN);
            g_value_set_boolean(&params[params_cnt].value, TRUE);

make is stable again(for now anyway)

joakim-tjernlund commented 7 years ago

I am using your libnice, branch debian-jessie

joakim-tjernlund commented 6 years ago

ping?

joakim-tjernlund commented 6 years ago

This has been fixed in debian-jessie branch now, closing