Some small fixes to handle half-duplex modes.

cusax-fix
Werner Dittmann 17 years ago
parent 48869d0f22
commit 3eb7709692

@ -220,12 +220,12 @@ public void run()
}
catch (InterruptedException e)
{
e.printStackTrace();
// e.printStackTrace();
}
}
}
long endTime = System.currentTimeMillis() + nextDelay;
long currentTime = System.currentTimeMillis();
long endTime = currentTime + nextDelay;
synchronized (sync) {
while ((currentTime < endTime) && newTask && !stop)
{
@ -235,7 +235,7 @@ public void run()
}
catch (InterruptedException e)
{
e.printStackTrace();
//e.printStackTrace();
}
currentTime = System.currentTimeMillis();
}
@ -319,12 +319,6 @@ public void run()
*/
private boolean started = false;
/**
* Only multi-stream session may be started as one-way communication
* channels.
*/
private boolean multiStream = false;
/**
* Construct a ZRTPTransformEngine.
*
@ -536,6 +530,12 @@ public RawPacket transform(RawPacket pkt)
*/
public RawPacket reverseTransform(RawPacket pkt)
{
// Check if we need to start ZRTP
if (!started && enableZrtp)
{
startZrtp();
}
/*
* Check if incoming packt is a ZRTP packet, if not treat
* it as normal RTP packet and handle it accordingly.
@ -544,10 +544,6 @@ public RawPacket reverseTransform(RawPacket pkt)
int offset = pkt.getOffset();
if ((buffer[offset] & 0x10) != 0x10)
{
if (!started && enableZrtp && (multiStream || (sendPacketCount >= 1)))
{
startZrtp();
}
if (srtpInTransformer == null)
{
return pkt;
@ -589,10 +585,6 @@ public RawPacket reverseTransform(RawPacket pkt)
{
return null;
}
if (!started && (multiStream || (sendPacketCount >= 1)))
{
startZrtp();
}
byte[] extHeader = zPkt.getMessagePart();
zrtpEngine.processZrtpMessage(extHeader, zPkt.getSSRC());
}
@ -666,11 +658,11 @@ public boolean srtpSecretsReady(ZrtpSrtpSecrets secrets,
secrets.getInitSaltLen() / 8 // salt length
);
SRTPTransformEngine engine = new SRTPTransformEngine(secrets
.getKeyInitiator(), secrets.getSaltInitiator(),
srtpPolicy, srtpPolicy);
SRTPTransformEngine engine = new SRTPTransformEngine(secrets
.getKeyInitiator(), secrets.getSaltInitiator(),
srtpPolicy, srtpPolicy);
srtpOutTransformer = engine.getRTPTransformer();
srtpOutTransformer = engine.getRTPTransformer();
}
else
{
@ -1021,7 +1013,6 @@ public void setMultiStrParams(byte[] parameters)
{
if (zrtpEngine != null) {
zrtpEngine.setMultiStrParams(parameters);
multiStream = true;
}
}

Loading…
Cancel
Save