WebRTC connection failed due to DTLS error
Vladimir Tyutin
vladimir.tyutin at gmail.com
Tue Dec 29 12:52:33 UTC 2020
Sure Anton,
I will collect it once again and attach it to the next email.
I use the following command to activate logging:
“export GST_DEBUG=2,webrtc*:6,*dtls*:7”
Let me know if I need to include any other plugins to logging that might assist to analyse the issue.
Thanks,
Vladimir
> On 29 Dec 2020, at 15:22, Anton Pryima <zingfrid at gmail.com> wrote:
>
> Hello Vladimir,
>
> I've tried to google your errors and it looks like that dtls is not the reason. Can you please attach the full connection log from the beginning?
>
> Best regards,
> Anton.
>
> On Tue, Dec 29, 2020 at 10:02 AM Vladimir Tyutin <vladimir.tyutin at gmail.com <mailto:vladimir.tyutin at gmail.com>> wrote:
> Anton,
> It's difficult to do on opponent side because there I have:
> 1. iOS application with webrtc
> 2. Android application with webrtc
> 3. JS application with webrtc
>
> Can you advise how to check openssl there?
> But all three applications worked well when I used gstreamer version 1.16.0 on my Linux camera device.
> Once I updated gstreamer version to 1.18.2 on camera device something broke.
> So I'm pretty sure issue on camera side but I have no idea how to understand this log with dtls error and what should I fix.
>
> Moreover on my linux camera device I have gnutls and openssl. What is used by dtls plugin? Is it openssl or gnutls?
>
> Thanks,
> Vladimir
>
>
>
> On Tue, Dec 29, 2020 at 10:49 AM Anton Pryima <zingfrid at gmail.com <mailto:zingfrid at gmail.com>> wrote:
> Hello Vladimir.
>
> Try to execute 'openssl version' at the both sides and provide output.
>
> Best regards,
> Anton.
>
> On Mon, Dec 28, 2020, 22:03 Vladimir Tyutin <vladimir.tyutin at gmail.com <mailto:vladimir.tyutin at gmail.com>> wrote:
> I still can't resolve the issue.
> Can someone with dtls plugin experience analyze the log attached and tell me what is wrong and how to fix it?
>
> DTLS plugin exists. Openssl is available on my camera device:
> root at tina:~# openssl version
> OpenSSL 1.1.0i 14 Aug 2018
>
> So why webrtc can't connect due to dtls issue?
>
> Same code was working on gstreamer version 1.16.0. The issue appeared when I migrated to gstreamer version 1.18.2.
>
> I have also updated libnice to the latest version.
>
> Please help me.
>
> Thanks,
> Vladimir
>
> On Thu, Dec 24, 2020 at 10:48 AM Vladimir Tyutin <vladimir.tyutin at gmail.com <mailto:vladimir.tyutin at gmail.com>> wrote:
> Thanks Anton,
> Do you know if there any command in Linux to verify OpenSSL exists and running well?
> In my build for openwrt Linux OpenSSL is included.
>
>> On 24 Dec 2020, at 10:25, Anton Pryima <zingfrid at gmail.com <mailto:zingfrid at gmail.com>> wrote:
>>
>>
>> Hello Vladimir.
>>
>> According to both logs provided, I see an issue with OpenSSL. Please ensure that both ends have correct and working versions of OpenSSL.
>>
>> Best regards,
>> Anton
>>
>> On Thu, Dec 24, 2020, 08:40 Vladimir Tyutin <vladimir.tyutin at gmail.com <mailto:vladimir.tyutin at gmail.com>> wrote:
>> Hello everyone,
>> Can someone help me with issue below?
>> Please review the log from previous mail and suggest what is the issue with dtls and how to fix it.
>>
>> Thanks,
>> Vladimir
>>
>>> On 20 Dec 2020, at 09:53, Vladimir Tyutin <vladimir.tyutin at gmail.com <mailto:vladimir.tyutin at gmail.com>> wrote:
>>>
>>>
>>> Please find the log attached with dtls log level set to 7.
>>> Please help me to understand what is wrong and why peer connection is failing.
>>>
>>> Thanks,
>>> Vladimir
>>>
>>> On Sun, Dec 20, 2020 at 8:56 AM Vladimir Tyutin <vladimir.tyutin at gmail.com <mailto:vladimir.tyutin at gmail.com>> wrote:
>>> Hi Sean,
>>> Thanks for your reply. Could you please advise how better to collect DTLS pcaps?
>>> I can activate log for DTLS element like this:
>>> export GST_DEBUG=2,dtls*:7
>>> Is it enough?
>>>
>>> By the way I'm trying to get webrtc working between Lindenis V536 camera and iOS app.
>>> They have already worked before together. On iOS side nothing is changed.
>>> in camera side I have migrated from gstreamer version 1.16.0 to version 1.18.2.
>>> So is there any changes in dtls side between these versions.
>>> Any suggesting how better to debug this issue I would appreciate.
>>>
>>> Thanks,
>>> Vladimir
>>>
>>> PS. I will share DTLS element logs once I collect it.
>>>
>>> On Sun, Dec 20, 2020 at 1:19 AM Sean DuBois <sean at siobud.com <mailto:sean at siobud.com>> wrote:
>>> Hey Vladimir,
>>>
>>> Would you mind getting a pcap of your DTLS traffic? I assume you are
>>> getting a Close because the clients are incompatible. These are the big
>>> ones I have seen with DTLS.
>>>
>>> * One side doesn't have use_srtp
>>> * DTLS v1.0 and v1.2 mismatch
>>> * One side requiring Extended Master Secret, other side not supporting
>>> * .... lots of other crazy stuff :)
>>>
>>> thanks
>>>
>>> On Sat, Dec 19, 2020 at 04:54:58PM +0300, Vladimir Tyutin wrote:
>>> > Please assist me to solve the issue below.
>>> > I observe WebRTC peer connection can't be established.
>>> > In log I see some errors related to dtls. Please help me understand the log
>>> > below and get the issue resolved:
>>> >
>>> > 0:01:21.644288173 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1ab0f08 DTLS state: 0x0
>>> > 0:01:21.644405214 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1ab0f08 ICE state: 0x1
>>> > 0:01:21.644569089 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1bed050 DTLS state: 0x3
>>> > 0:01:21.644678631 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1bed050 ICE state: 0x2
>>> > 0:01:21.644764381 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1131:_collate_peer_connection_states:<webrtc>
>>> > ICE connection state: 0x6. DTLS connection state: 0x9
>>> > 0:01:21.644837673 1090 0x1b401b0 FIXME webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1189:_collate_peer_connection_states:<webrtc>
>>> > Undefined situation detected, returning old state
>>> > 0:01:21.762102246 1090 0x1f1b7b0 WARN dtlssrtpdemux
>>> > gst-plugins-bad-1.18.2/ext/dtls/gstdtlssrtpdemux.c:134:sink_chain:<dtlssrtpdemux2>
>>> > received invalid buffer: 1
>>> > 0:01:21.769914036 1090 0x1f1b7b0 ERROR dtlsconnection
>>> > gst-plugins-bad-1.18.2/ext/dtls/gstdtlsconnection.c:985:handle_error:<GstDtlsConnection at 0x1da56f0>
>>> > Fatal SSL error
>>> > 0:01:21.770157620 1090 0x1f1b7b0 ERROR dtlsconnection
>>> > gst-plugins-bad-1.18.2/ext/dtls/gstdtlsconnection.c:968:ssl_err_cb:<GstDtlsConnection at 0x1da56f0>
>>> > ssl error:
>>> > 2947169560:error:14102410:lib(20):func(258):reason(1040):NA:0:SSL alert
>>> > number 40
>>> >
>>> > 0:01:21.770551453 1090 0x1f1b7b0 ERROR dtlsdec
>>> > gst-plugins-bad-1.18.2/ext/dtls/gstdtlsdec.c:502:process_buffer:<dtlsdec2>
>>> > Error processing buffer: Fatal SSL error
>>> > 0:01:21.770553453 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1ab0f08 DTLS state: 0x0
>>> > 0:01:21.770745245 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1ab0f08 ICE state: 0x1
>>> > 0:01:21.770861286 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1073:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1bed050 DTLS state: 0x2
>>> > 0:01:21.770951120 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1086:_collate_peer_connection_states:<webrtc>
>>> > transceiver 0x1bed050 ICE state: 0x2
>>> > 0:01:21.771039203 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1131:_collate_peer_connection_states:<webrtc>
>>> > ICE connection state: 0x6. DTLS connection state: 0x5
>>> > 0:01:21.771119036 1090 0x1b401b0 TRACE webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1145:_collate_peer_connection_states:<webrtc>
>>> > returning failed
>>> > 0:01:21.771230036 1090 0x1b401b0 INFO webrtcbin
>>> > gst-plugins-bad-1.18.2/ext/webrtc/gstwebrtcbin.c:1295:_update_peer_connection_state_task:<webrtc>
>>> > Peer connection state change from connecting(1) to failed(4)
>>> > [CAMERA_DEBUG] Peer connection state: failed
>>> > 0:01:21.770664245 1090 0x1f1b7b0 WARN dtlsdec
>>> > gst-plugins-bad-1.18.2/ext/dtls/gstdtlsdec.c:503:process_buffer:<dtlsdec2>
>>> > error: Fatal SSL error
>>> > 0:01:21.772238245 1090 0x1f1b7b0 ERROR dtlsdec
>>> > gst-plugins-bad-1.18.2/ext/dtls/gstdtlsdec.c:618:sink_chain:<dtlsdec2>
>>> > Failed to process buffer: error
>>> > 0:01:21.808121366 1090 0x1f1ba90 WARN basesrc
>>> > gstreamer-1.18.2/libs/gst/base/gstbasesrc.c:3127:gst_base_src_loop:<nicesrc2>
>>> > error: Internal data stream error.
>>> > 0:01:21.808266866 1090 0x1f1ba90 WARN basesrc
>>> > gstreamer-1.18.2/libs/gst/base/gstbasesrc.c:3127:gst_base_src_loop:<nicesrc2>
>>> > error: streaming stopped, reason error (-5)
>>> > 0:01:21.809681158 1090 0x1f1ba90 WARN queue
>>> > gstreamer-1.18.2/plugins/elements/gstqueue.c:990:gst_queue_handle_sink_event:<queue8>
>>> > error: Internal data stream error.
>>> > 0:01:21.809811158 1090 0x1f1ba90 WARN queue
>>> > gstreamer-1.18.2/plugins/elements/gstqueue.c:990:gst_queue_handle_sink_event:<queue8>
>>> > error: streaming stopped, reason error (-5)
>>>
>>> > _______________________________________________
>>> > gstreamer-devel mailing list
>>> > gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
>>> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
>>>
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
>>> <log_v536.txt>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20201229/96010b7e/attachment-0001.htm>
More information about the gstreamer-devel
mailing list