#include "zrtp_config.h"
#include "zrtp_base.h"
#include "zrtp_error.h"
#include "zrtp_types.h"
#include "zrtp_protocol.h"
#include "zrtp_engine.h"
#include "zrtp_crypto.h"
#include "zrtp_iface.h"
#include "zrtp_iface_system.h"
#include "zrtp_iface_scheduler.h"
#include "zrtp_list.h"
#include "zrtp_legal.h"
#include "zrtp_log.h"
#include "zrtp_srtp.h"
#include "zrtp_srtp_builtin.h"
#include "zrtp_string.h"
#include "zrtp_pbx.h"
#include "zrtp_version.h"
#include "zrtp_iface_cache.h"
#include "zrtp_ec.h"
Go to the source code of this file.
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... | |
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_license_mode_t { ZRTP_LICENSE_MODE_PASSIVE = 0, ZRTP_LICENSE_MODE_ACTIVE, ZRTP_LICENSE_MODE_UNLIMITED } |
Enumeration for ZRTP Licensing modes
A ZRTP endpoint that is Passive will never send a Commit message, which means that it cannot be the initiator in the ZRTP exchange. Since at least one of the two parties must be the initiator, two Passive endpoints cannot make a secure connection. However, a non-Passive ZRTP endpoint can send a Commit message, enabling it to act as the initiator in a ZRTP exchange. This allows it to make a secure connection to a Passive endpoint, or to another non-Passive endpoint. More... | |
Functions | |
void | zrtp_config_defaults (zrtp_config_t *config) |
Initializes libzrtp global config. | |
zrtp_status_t | zrtp_init (zrtp_config_t *config, zrtp_global_t **zrtp) |
Initializing libzrtp. | |
zrtp_status_t | zrtp_down (zrtp_global_t *zrtp) |
Shutting down the library. | |
zrtp_status_t | zrtp_session_init (zrtp_global_t *zrtp, zrtp_profile_t *profile, zrtp_zid_t zid, uint8_t is_initiator, zrtp_session_t **session) |
ZRTP Session Initialization. | |
void | zrtp_session_down (zrtp_session_t *session) |
ZRTP Session context deinitialization. | |
zrtp_status_t | zrtp_session_get (zrtp_session_t *session, zrtp_session_info_t *info) |
Obtain information about ZRTP session. | |
void | zrtp_session_set_userdata (zrtp_session_t *session, void *udata) |
Allow user to associate some data with current zrtp session. | |
void * | zrtp_session_get_userdata (zrtp_session_t *session) |
Return user data associated with the zrtp session. | |
zrtp_status_t | zrtp_stream_attach (zrtp_session_t *session, zrtp_stream_t **stream) |
Attaching a new stream to the session. | |
zrtp_status_t | zrtp_stream_start (zrtp_stream_t *stream, uint32_t ssrc) |
Starting a ZRTP stream. | |
zrtp_status_t | zrtp_stream_stop (zrtp_stream_t *stream) |
ZRTP protocol stopping. | |
zrtp_status_t | zrtp_stream_clear (zrtp_stream_t *stream) |
Initiating an interruption of the secure connection. | |
zrtp_status_t | zrtp_stream_secure (zrtp_stream_t *stream) |
Initiating a secure connection setup. | |
zrtp_status_t | zrtp_stream_get (zrtp_stream_t *stream, zrtp_stream_info_t *info) |
Obtain information about zrtp stream. | |
void | zrtp_stream_set_userdata (zrtp_stream_t *stream, void *udata) |
Allow user to associate some data with zrtp stream. | |
void * | zrtp_stream_get_userdata (const zrtp_stream_t *stream) |
Return user data associated with the zrtp stream. | |
zrtp_status_t | zrtp_process_rtp (zrtp_stream_t *stream, char *packet, unsigned int *length) |
Processing outgoing RTP packets. | |
zrtp_status_t | zrtp_process_srtp (zrtp_stream_t *stream, char *packet, unsigned int *length) |
Processing incoming RTP packets. | |
zrtp_status_t | zrtp_process_rtcp (zrtp_stream_t *stream, char *packet, unsigned int *length) |
Processing outgoing RTCP packets. | |
zrtp_status_t | zrtp_process_srtcp (zrtp_stream_t *stream, char *packet, unsigned int *length) |
Processing incoming RTCP packets. | |
zrtp_status_t | zrtp_signaling_hash_set (zrtp_stream_t *stream, const char *hash_buff, uint32_t hash_buff_length) |
Specifies the hash of the peer Hello message for verification. | |
zrtp_status_t | zrtp_signaling_hash_get (zrtp_stream_t *stream, char *hash_buff, uint32_t hash_buff_length) |
Returns the hash of the Hello message to be transferred in signaling. | |
zrtp_status_t | zrtp_verified_set (zrtp_global_t *zrtp, zrtp_string16_t *zid1, zrtp_string16_t *zid2, uint8_t verified) |
Changing the value of the secret's verification flag. | |
zrtp_status_t | zrtp_profile_check (const zrtp_profile_t *profile, zrtp_global_t *zrtp) |
Verifying the ZRTP profile. | |
void | zrtp_profile_defaults (zrtp_profile_t *profile, zrtp_global_t *zrtp) |
Configure the default ZRTP profile. | |
int | zrtp_profile_find (const zrtp_profile_t *profile, zrtp_crypto_comp_t type, uint8_t id) |
Search for a component in the profile by ID. | |
int | zrtp_entropy_add (zrtp_global_t *zrtp, const unsigned char *buffer, uint32_t length) |
Entropy accumulation routine. | |
int | zrtp_randstr (zrtp_global_t *zrtp, unsigned char *buffer, uint32_t length) |
Random string generation. |