Jitsi: the OpenSource Java VoIP and Instant Messaging client.

net.java.sip.communicator.service.neomedia
Interface SrtpControl

All Known Subinterfaces:
SDesControl, ZrtpControl
All Known Implementing Classes:
SDesControlImpl, ZrtpControlImpl

public interface SrtpControl

Controls SRTP encryption in the MediaStream.

Author:
Damian Minkov

Method Summary
 void cleanup()
          Cleans up the current SRTP control and its engine.
 boolean getSecureCommunicationStatus()
          Gets the default secure/insecure communication status for the supported call sessions.
 SrtpListener getSrtpListener()
          Returns the SrtpListener which listens for security events.
 TransformEngine getTransformEngine()
          Returns the transform engine currently used by this stream.
 boolean requiresSecureSignalingTransport()
          Indicates if the key exchange method is dependent on secure transport of the signaling channel.
 void setConnector(AbstractRTPConnector connector)
          Sets the RTPConnector which is to use or uses this SRTP engine.
 void setMasterSession(boolean masterSession)
          When in multistream mode, enables the master session.
 void setMultistream(SrtpControl master)
          Sets the multistream data, which means that the master stream has successfully started and this will start all other streams in this session.
 void setSrtpListener(SrtpListener srtpListener)
          Sets a SrtpListener that will listen for security events.
 void start(MediaType mediaType)
          Starts and enables zrtp in the stream holding this control.
 

Method Detail

cleanup

void cleanup()
Cleans up the current SRTP control and its engine.


setSrtpListener

void setSrtpListener(SrtpListener srtpListener)
Sets a SrtpListener that will listen for security events.

Parameters:
srtpListener - the SrtpListener that will receive the events

getSrtpListener

SrtpListener getSrtpListener()
Returns the SrtpListener which listens for security events.

Returns:
the SrtpListener which listens for security events

getSecureCommunicationStatus

boolean getSecureCommunicationStatus()
Gets the default secure/insecure communication status for the supported call sessions.

Returns:
default secure communication status for the supported call sessions.

setMasterSession

void setMasterSession(boolean masterSession)
When in multistream mode, enables the master session.

Parameters:
masterSession - whether current control, controls the master session.

start

void start(MediaType mediaType)
Starts and enables zrtp in the stream holding this control.

Parameters:
mediaType - the media type of the stream this control controls.

setMultistream

void setMultistream(SrtpControl master)
Sets the multistream data, which means that the master stream has successfully started and this will start all other streams in this session.

Parameters:
master - The security control of the master stream.

getTransformEngine

TransformEngine getTransformEngine()
Returns the transform engine currently used by this stream.

Returns:
the RTP stream transformation engine

setConnector

void setConnector(AbstractRTPConnector connector)
Sets the RTPConnector which is to use or uses this SRTP engine.

Parameters:
connector - the RTPConnector which is to use or uses this SRTP engine

requiresSecureSignalingTransport

boolean requiresSecureSignalingTransport()
Indicates if the key exchange method is dependent on secure transport of the signaling channel.

Returns:
True when secure signaling is required to make the encryption secure, false otherwise.

Jitsi: the OpenSource Java VoIP and Instant Messaging client.

Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under LGPL license.