[jitsi-dev] [libjitsi] Latest libjitsi.jar throws DTLS exception while jvb's libjitsi.jar is OK (#16)


#1

If I use libjitsi.jar copied from videobridge(https://download.jitsi.org/jitsi-videobridge/linux/jitsi-videobridge-linux-x64-202.zip), everything is OK, no exception appears.
But if I use libjitsi.jar built from latest version of libjitsi repo, there will be some DTLS exceptions:
BTW, libjitsi and bouncycastle(bcpkix-jdk15on-151.jar, bcprov-jdk15on-151.jar) have been updated to latest version.

Here are DTLS exceptions:

SEVERE: Failed to connect this DTLS client to a DTLS server! Received fatal alert 47.
org.bouncycastle.crypto.tls.TlsFatalAlert
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.reportServerVersion(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.processServerHello(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.clientHandshake(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.connect(Unknown Source)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.runInConnectThread(DtlsPacketTransformer.java:759)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.access$000(DtlsPacketTransformer.java:26)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer$1.run(DtlsPacketTransformer.java:970)
Aug 11, 2014 2:39:18 PM org.jitsi.util.Logger info
INFO: Starting, format=audio 1542631196
Aug 11, 2014 2:39:18 PM org.jitsi.util.Logger error
SEVERE: Failed to connect this DTLS client to a DTLS server! Received fatal alert 47.
org.bouncycastle.crypto.tls.TlsFatalAlert
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.reportServerVersion(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.processServerHello(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.clientHandshake(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.connect(Unknown Source)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.runInConnectThread(DtlsPacketTransformer.java:759)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.access$000(DtlsPacketTransformer.java:26)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer$1.run(DtlsPacketTransformer.java:970)
Exception in thread "Thread-15" java.lang.IllegalStateException: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:287)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.reverseTransform(DtlsPacketTransformer.java:608)
  at org.jitsi.impl.neomedia.transform.SinglePacketTransformer.reverseTransform(SinglePacketTransformer.java:78)
  at org.jitsi.impl.neomedia.transform.TransformEngineChain$PacketTransformerChain.reverseTransform(TransformEngineChain.java:234)
  at org.jitsi.impl.neomedia.transform.TransformInputStream.createRawPacket(TransformInputStream.java:55)
  at org.jitsi.impl.neomedia.RTPConnectorInputStream.run(RTPConnectorInputStream.java:542)
  at java.lang.Thread.run(Thread.java:701)
Caused by: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.assertNotClosed(DatagramTransportImpl.java:118)
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:283)
  ... 6 more
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger error
SEVERE: Failed to connect this DTLS client to a DTLS server! Received fatal alert 47.
org.bouncycastle.crypto.tls.TlsFatalAlert
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.reportServerVersion(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.processServerHello(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.clientHandshake(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.connect(Unknown Source)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.runInConnectThread(DtlsPacketTransformer.java:759)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.access$000(DtlsPacketTransformer.java:26)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer$1.run(DtlsPacketTransformer.java:970)
Aug 11, 2014 2:39:19 PM net.sf.fmj.media.Log info
INFO: Resetting queue, last seq added: 9223372036854775806, current seq: 10734
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger error
SEVERE: Failed to connect this DTLS client to a DTLS server! Received fatal alert 47.
org.bouncycastle.crypto.tls.TlsFatalAlert
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.reportServerVersion(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.processServerHello(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.clientHandshake(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.connect(Unknown Source)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.runInConnectThread(DtlsPacketTransformer.java:759)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.access$000(DtlsPacketTransformer.java:26)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer$1.run(DtlsPacketTransformer.java:970)
Exception in thread "Thread-19" java.lang.IllegalStateException: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:287)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.reverseTransform(DtlsPacketTransformer.java:608)
  at org.jitsi.impl.neomedia.transform.SinglePacketTransformer.reverseTransform(SinglePacketTransformer.java:78)
  at org.jitsi.impl.neomedia.transform.TransformEngineChain$PacketTransformerChain.reverseTransform(TransformEngineChain.java:234)
  at org.jitsi.impl.neomedia.transform.TransformInputStream.createRawPacket(TransformInputStream.java:55)
  at org.jitsi.impl.neomedia.RTPConnectorInputStream.run(RTPConnectorInputStream.java:542)
  at java.lang.Thread.run(Thread.java:701)
Caused by: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.assertNotClosed(DatagramTransportImpl.java:118)
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:283)
  ... 6 more
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: Set incoming payload type 116
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: Set outgoing payload type -1
Aug 11, 2014 2:39:19 PM net.sf.fmj.media.Log info
INFO: Growing packet queue to 300
Exception in thread "Thread-20" java.lang.IllegalStateException: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:287)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.reverseTransform(DtlsPacketTransformer.java:608)
  at org.jitsi.impl.neomedia.transform.SinglePacketTransformer.reverseTransform(SinglePacketTransformer.java:78)
  at org.jitsi.impl.neomedia.transform.TransformEngineChain$PacketTransformerChain.reverseTransform(TransformEngineChain.java:234)
  at org.jitsi.impl.neomedia.transform.TransformInputStream.createRawPacket(TransformInputStream.java:55)
  at org.jitsi.impl.neomedia.RTPConnectorInputStream.run(RTPConnectorInputStream.java:542)
  at java.lang.Thread.run(Thread.java:701)
Caused by: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.assertNotClosed(DatagramTransportImpl.java:118)
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:283)
  ... 6 more
Aug 11, 2014 2:39:19 PM net.sf.fmj.media.Log info
INFO: Resetting queue, last seq added: 9223372036854775806, current seq: 20862
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: Starting, format=video 1462519656
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: Set incoming payload type 116
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: Set outgoing payload type -1
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger error
SEVERE: Failed to connect this DTLS client to a DTLS server! Received fatal alert 47.
org.bouncycastle.crypto.tls.TlsFatalAlert
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.reportServerVersion(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.processServerHello(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.clientHandshake(Unknown Source)
  at org.bouncycastle.crypto.tls.DTLSClientProtocol.connect(Unknown Source)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.runInConnectThread(DtlsPacketTransformer.java:759)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.access$000(DtlsPacketTransformer.java:26)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer$1.run(DtlsPacketTransformer.java:970)
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: New FECReceiver for SSRC=3113195556
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: New FECReceiver for SSRC=1110375454
Aug 11, 2014 2:39:19 PM org.jitsi.util.Logger info
INFO: Recording task of MUC ixjftw0vgdz8semi@conference.example.com started.
Exception in thread "Thread-16" java.lang.IllegalStateException: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:287)
  at org.jitsi.impl.neomedia.transform.dtls.DtlsPacketTransformer.reverseTransform(DtlsPacketTransformer.java:608)
  at org.jitsi.impl.neomedia.transform.SinglePacketTransformer.reverseTransform(SinglePacketTransformer.java:78)
  at org.jitsi.impl.neomedia.transform.TransformEngineChain$PacketTransformerChain.reverseTransform(TransformEngineChain.java:234)
  at org.jitsi.impl.neomedia.transform.TransformInputStream.createRawPacket(TransformInputStream.java:55)
  at org.jitsi.impl.neomedia.RTPConnectorInputStream.run(RTPConnectorInputStream.java:542)
  at java.lang.Thread.run(Thread.java:701)
Caused by: java.io.IOException: org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl is closed!
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.assertNotClosed(DatagramTransportImpl.java:118)
  at org.jitsi.impl.neomedia.transform.dtls.DatagramTransportImpl.queueReceive(DatagramTransportImpl.java:283)
  ... 6 more

···

---
Reply to this email directly or view it on GitHub:
https://github.com/jitsi/libjitsi/issues/16


#2

Did you open this issue for your own bookkeeping purposes or did you actually want a libjitsi developer to look into it? If you want me to work on it, I'll need detailed-enough instructions on how to reproduce it.

···

---
Reply to this email directly or view it on GitHub:
https://github.com/jitsi/libjitsi/issues/16#issuecomment-51758662


#3

I think this was supposed to be in the jirecon issues.

···

---
Reply to this email directly or view it on GitHub:
https://github.com/jitsi/libjitsi/issues/16#issuecomment-51759339


#4

Sorry, it was my fault. I originally thought the problem was related to libjitsi while it actually happened in Jirecon. I'll move it to Jirecon issues.

···

---
Reply to this email directly or view it on GitHub:
https://github.com/jitsi/libjitsi/issues/16#issuecomment-51761393


#5

Closed #16.

···

---
Reply to this email directly or view it on GitHub:
https://github.com/jitsi/libjitsi/issues/16#event-151293061