meetecho / janus-gateway

Janus WebRTC Server
https://janus.conf.meetecho.com
GNU General Public License v3.0
8.15k stars 2.47k forks source link

dtls cannot initiate srtp #660

Closed lilong-epfl closed 7 years ago

lilong-epfl commented 7 years ago

Hi, when I try to run Janus gateway, I got the following fatal: [FATAL] [dtls.c:janus_dtls_srtp_init:231] Ops, error setting up libsrtp?

which cause call hangup or DTLSv1_get_timeout.

Any idea about this? Thanks

cacheworks commented 7 years ago

Which version of libsrtp are you using? If you're not using 1.5 try installing that manually as described in the README.md

lminiero commented 7 years ago

Are you using an old version of Janus? line 231 of dtls.c points to a comment https://github.com/meetecho/janus-gateway/blob/master/dtls.c#L231

lilong-epfl commented 7 years ago

I tried openssl with version 1.0.1e, 1.0.1f, 1.0.2j. I also changed the libsrtp with version 1.5.4 and 1.5.0. But nothing works.

lilong-epfl commented 7 years ago

I am using Janus 0.1.0

lilong-epfl commented 7 years ago

I am using Buildroot, Janus 0.1.0 is the only one integrated into Buildroot. If I change the config file to higher version. I always got Segment fault.

lminiero commented 7 years ago

Sorry but we can't provide support for something so old. Try installing a more recent version and in case it still happens feel free to re-open this issue. That said, if it it fails on srtp_init() it's probably an issue with libsrtp itself, rather than Janus.

lilong-epfl commented 7 years ago

Hi, this problem is solved by update libnice to 0.1.10. The reason is that libnice symbol clash with openSSL. Both libraries define the function RAND_bytes(). For some reason, openSSL tries to call the function defined in libnice instead use it's own definition. If this happen, it also cause the famous DTLSv1_get_timeout problem. Starting from 0.1.10, libnice rename this function to nice_RAND_bytes() to avoid this issue. related link: https://lists.freedesktop.org/archives/nice/2014-October/000976.html https://lists.freedesktop.org/archives/gstreamer-commits/2015-January/084746.html

lminiero commented 7 years ago

Aaaah cool, I didn't know about that, thanks for the heads up!

lilong-epfl commented 7 years ago

I don't know why my related links don't work here, but you can copy it to the browser. May be someone can help edit it.