Types and Definitions
[API]

Collaboration diagram for Types and Definitions:

Data Structures

struct  zrtp_config_t
 ZRTP global configuration options. More...
struct  zrtp_stream_info_t
 zrtp stream information structure

libzrtp, since v0.80 takes data incapsulating approach and hides all private date inside zrtp_stream_t structure. Developers shouldn't access them directly. zrtp_stream_get() should be used instead to fill zrtp_stream_info_t structure. zrtp_stream_info_t contains all needed information in safe and easy to use form. More...

struct  zrtp_session_info_t
 zrtp session information structure

libzrtp, since v0.80 takes data incapsulating approach and hides all private date inside zrtp_session_t structure. Developers shouldn't access them directly. zrtp_session_get() should be used instead to fill zrtp_session_info_t structure. zrtp_session_info_t contains all needed information in safe and easy to use form. More...

struct  zrtp_profile_t
 ZRTP session profile

ZRTP Sessions are configured with a profile scheme. Each profile is defined by a structure of the given type. zrtp_profile_t contains a set of preferences for crypto components and other protocol parameters. More...


Typedefs

typedef unsigned char zrtp_zid_t [12]
 12-byte ZID for unique ZRTP endpoint identification.
typedef char zrtp_client_id_t [16]
 16-byte ID for ZRTP endpoint's software identification.

Enumerations

enum  zrtp_state_t {
  ZRTP_STATE_NONE = 0, ZRTP_STATE_ACTIVE, ZRTP_STATE_START, ZRTP_STATE_WAIT_HELLOACK,
  ZRTP_STATE_WAIT_HELLO, ZRTP_STATE_CLEAR, ZRTP_STATE_START_INITIATINGSECURE, ZRTP_STATE_INITIATINGSECURE,
  ZRTP_STATE_WAIT_CONFIRM1, ZRTP_STATE_WAIT_CONFIRMACK, ZRTP_STATE_PENDINGSECURE, ZRTP_STATE_WAIT_CONFIRM2,
  ZRTP_STATE_SECURE, ZRTP_STATE_SASRELAYING, ZRTP_STATE_INITIATINGCLEAR, ZRTP_STATE_PENDINGCLEAR,
  ZRTP_STATE_INITIATINGERROR, ZRTP_STATE_PENDINGERROR, ZRTP_STATE_ERROR, ZRTP_STATE_NO_ZRTP,
  ZRTP_STATE_COUNT
}
 Defines ZRTP state-machine states

The conditions for switching from one state to another, and libzrtp behavior in every state is described in detail in XXX and depicted in diagram XXX and XXX. More...

enum  zrtp_stream_mode_t {
  ZRTP_STREAM_MODE_UNKN = 0, ZRTP_STREAM_MODE_CLEAR = 1, ZRTP_STREAM_MODE_DH = 2, ZRTP_STREAM_MODE_PRESHARED = 3,
  ZRTP_STREAM_MODE_MULT = 4, ZRTP_STREAM_MODE_COUNT = 5
}
 Enumeration for ZRTP stream mode definition. More...

Detailed Description

The data types used in libzrtp are defined in this section

Enumeration Type Documentation

Defines ZRTP state-machine states

The conditions for switching from one state to another, and libzrtp behavior in every state is described in detail in XXX and depicted in diagram XXX and XXX.

The current stream state is stored in the zrtp_stream_info_t::state variable and available for reading at any time.

Enumerator:
ZRTP_STATE_START  Just right stream attaching, before protocol start
ZRTP_STATE_WAIT_HELLOACK  Protocol initiated, Discovery haven't started yet
ZRTP_STATE_WAIT_HELLO  Hello sending, waiting for HelloAck
ZRTP_STATE_CLEAR  HelloAck received, Waiting for peer Hello
ZRTP_STATE_START_INITIATINGSECURE  CLEAR state
ZRTP_STATE_INITIATINGSECURE  Starting Initiator state-machine
ZRTP_STATE_WAIT_CONFIRM1  Commit retries, waiting for DH1
ZRTP_STATE_WAIT_CONFIRMACK  DH2 retries, waiting for Confirm1
ZRTP_STATE_PENDINGSECURE  Confirm2 retries, waiting for ConfirmAck
ZRTP_STATE_WAIT_CONFIRM2  Responder state-machine, waiting for DH2
ZRTP_STATE_SECURE  Waiting for Confirm2 to finalize ZRTP exchange
ZRTP_STATE_SASRELAYING  SECURE state, call is encrypted
ZRTP_STATE_INITIATINGCLEAR  SAS transferring to the remote peer (for MiTM only)
ZRTP_STATE_PENDINGCLEAR  Switching to CLEAR initated by the local endpoint
ZRTP_STATE_INITIATINGERROR  CLEAR request have been received
ZRTP_STATE_PENDINGERROR  Protocol ERROR detected on local side
ZRTP_STATE_ERROR  Protocol ERROR received from the remote peer
ZRTP_STATE_NO_ZRTP  Protcol ERROR state. Check zrtp_stream_info::last_error
ZRTP_STATE_COUNT  Discovery phase failed. Remote peer doesn't support ZRTP

Enumeration for ZRTP stream mode definition.

Enumerator:
ZRTP_STREAM_MODE_CLEAR  Unused stream - unknown mode
ZRTP_STREAM_MODE_DH  Just after stream attaching - mode is undefined
ZRTP_STREAM_MODE_PRESHARED  FULL DH ZRTP stream mode
ZRTP_STREAM_MODE_MULT  Preshared ZRTP stream mode
ZRTP_STREAM_MODE_COUNT  Multistream ZRTP stream mode


Generated on Wed Dec 9 17:31:06 2009 for libzrtp  zfone