68 #define SRTP_MASTER_KEY_LEN 30 73 #define SRTP_MAX_KEY_LEN 64 79 #define SRTP_MAX_TAG_LEN 16 89 #define SRTP_MAX_TRAILER_LEN SRTP_MAX_TAG_LEN 96 #define SRTP_AEAD_SALT_LEN 12 97 #define SRTP_AES_128_GCM_KEYSIZE_WSALT SRTP_AEAD_SALT_LEN + 16 98 #define SRTP_AES_192_GCM_KEYSIZE_WSALT SRTP_AEAD_SALT_LEN + 24 99 #define SRTP_AES_256_GCM_KEYSIZE_WSALT SRTP_AEAD_SALT_LEN + 32 110 #ifndef WORDS_BIGENDIAN 160 #ifndef WORDS_BIGENDIAN 193 unsigned int count:5;
200 unsigned int index:31;
734 #define srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(p) srtp_crypto_policy_set_rtp_default(p) 1194 unsigned char *salt,
unsigned int bytes_in_salt);
1492 #define SRTCP_E_BIT 0x80000000 1494 #define SRTCP_E_BYTE_BIT 0x80 1495 #define SRTCP_INDEX_MASK 0x7fffffff
uint32_t ssrc
Definition: srtp.h:128
struct srtp_ekt_stream_ctx_t * srtp_ekt_stream_t
points to EKT stream data
Definition: srtp.h:365
GLint GLsizei count
Definition: gl2.h:421
srtp_t session
Definition: srtp.h:1426
void srtp_crypto_policy_set_aes_cm_128_hmac_sha1_32(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_cm_128_hmac_sha1_32() sets a crypto policy structure to a short-authentica...
Definition: srtp.c:2638
void srtp_crypto_policy_set_aes_gcm_128_16_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_gcm_128_16_auth() sets a crypto policy structure to an AEAD encryption pol...
srtp_err_status_t srtp_add_stream(srtp_t session, const srtp_policy_t *policy)
srtp_add_stream() allocates and initializes an SRTP stream within a given SRTP session.
Definition: srtp.c:2284
struct srtp_event_data_t srtp_event_data_t
srtp_event_data_t is the structure passed as a callback to the event handler function ...
unsigned int srtp_get_version(void)
Returns the numeric representation of the library version.
Definition: srtp.c:116
Definition: srtp_priv.h:135
srtp_crypto_policy_t describes a particular crypto policy that can be applied to an SRTP stream...
Definition: srtp.h:306
uint16_t seq
Definition: srtp.h:126
unsigned char version
Definition: srtp.h:123
int cipher_key_len
Definition: srtp.h:309
DOMString p
Definition: WebCryptoAPI.idl:116
srtp_err_status_t srtp_crypto_policy_set_from_profile_for_rtcp(srtp_crypto_policy_t *policy, srtp_profile_t profile)
srtp_crypto_policy_set_from_profile_for_rtcp() sets a crypto policy structure to the appropriate valu...
Definition: srtp.c:3735
srtp_ssrc_type_t type
Definition: srtp.h:351
uint32_t srtp_auth_type_id_t
An srtp_auth_type_id_t is an identifier for a particular authentication function. ...
Definition: srtp.h:235
srtp_ssrc_type_t
srtp_ssrc_type_t describes the type of an SSRC.
Definition: srtp.h:329
int * enc_xtn_hdr
Definition: srtp.h:415
struct srtp_policy_t srtp_policy_t
represents the policy for an SRTP session.
void srtp_crypto_policy_set_aes_cm_256_hmac_sha1_80(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_cm_256_hmac_sha1_80() sets a crypto policy structure to a encryption and a...
Definition: srtp.c:2709
uint32_t ts
Definition: srtp.h:127
s ts
Definition: plot_neteq_delay.m:55
unsigned int uint32_t
Definition: ptypes.h:105
srtp_crypto_policy_t rtcp
Definition: srtp.h:402
void srtp_crypto_policy_set_null_cipher_hmac_sha1_80(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_null_cipher_hmac_sha1_80() sets a crypto policy structure to an authentication...
Definition: srtp.c:2676
uint16_t length
Definition: srtp.h:149
unsigned int index
Definition: srtp.h:172
struct srtp_policy_t * next
Definition: srtp.h:417
uint16_t profile_specific
Definition: srtp.h:148
srtp_stream_ctx_t * srtp_stream_t
An srtp_stream_t points to an SRTP stream structure.
Definition: srtp.h:451
srtp_event_t event
Definition: srtp.h:1428
srtp_err_status_t srtp_shutdown(void)
srtp_shutdown() de-initializes the srtp library.
Definition: srtp.c:2192
const GLfloat * m
Definition: gl2ext.h:850
srtp_err_status_t srtp_create(srtp_t *session, const srtp_policy_t *policy)
srtp_create() allocates and initializes an SRTP session.
Definition: srtp.c:2344
srtp_event_t
srtp_event_t defines events that need to be handled
Definition: srtp.h:1402
uint32_t ssrc
Definition: srtp.h:168
uint16_t version
Definition: ssl_lib.c:2731
void * srtp_get_user_data(srtp_t ctx)
srtp_get_user_data() retrieves the pointer to the custom data previously stored with srtp_set_user_da...
Definition: srtp.c:3695
srtp_profile_t
Definition: srtp.h:1107
srtp_ekt_policy_t ekt
Definition: srtp.h:405
int auth_tag_len
Definition: srtp.h:315
void
Definition: AVFoundationCFSoftLinking.h:81
void srtp_crypto_policy_set_aes_gcm_256_8_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_gcm_256_8_auth() sets a crypto policy structure to an AEAD encryption poli...
srtp_ctx_t * srtp_t
An srtp_t points to an SRTP session structure.
Definition: srtp.h:436
unsigned char * key
Definition: srtp.h:403
srtp_event_data_t is the structure passed as a callback to the event handler function ...
Definition: srtp.h:1425
unsigned char x
Definition: srtp.h:121
OPENSSL_EXPORT const ASN1_OBJECT int const unsigned char int len
Definition: x509.h:1053
unsigned char p
Definition: srtp.h:164
EGLSurface EGLint x
Definition: eglext.h:950
GLuint index
Definition: gl2.h:383
srtp_cipher_type_id_t cipher_type
Definition: srtp.h:307
EGLContext ctx
Definition: eglext.h:192
srtp_crypto_policy_t rtp
Definition: srtp.h:401
GLenum func
Definition: gl2.h:481
srtp_err_status_t srtp_update(srtp_t session, const srtp_policy_t *policy)
srtp_update() udpates all streams in the session.
Definition: srtp.c:2419
void srtp_crypto_policy_set_null_cipher_hmac_null(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_null_cipher_hmac_null() sets a crypto policy structure to use no encryption or...
Definition: srtp.c:2692
uint16_t len
Definition: srtp.h:167
unsigned short uint16_t
Definition: ptypes.h:97
const char * srtp_get_version_string(void)
Returns the version string of the library.
Definition: srtp.c:108
srtp_stream_t stream
Definition: srtp.h:1427
unsigned int srtp_profile_get_master_key_length(srtp_profile_t profile)
returns the master key length for a given SRTP profile
Definition: srtp.c:3773
unsigned char version
Definition: srtp.h:165
pt
Definition: parse_delay_file.m:32
srtp_err_status_t srtp_install_event_handler(srtp_event_handler_func_t func)
sets the event handler to the function supplied by the caller.
Definition: srtp.c:1062
void srtp_crypto_policy_set_aes_gcm_128_8_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_gcm_128_8_auth() sets a crypto policy structure to an AEAD encryption poli...
void srtp_crypto_policy_set_aes_cm_256_hmac_sha1_32(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_cm_256_hmac_sha1_32() sets a crypto policy structure to a short-authentica...
Definition: srtp.c:2725
srtp_ssrc_t ssrc
Definition: srtp.h:396
int enc_xtn_hdr_count
Definition: srtp.h:416
srtp_err_status_t srtp_update_stream(srtp_t session, const srtp_policy_t *policy)
srtp_update_stream() udpates a SRTP stream.
Definition: srtp.c:2575
const GLfloat * v
Definition: gl2.h:514
srtp_err_status_t srtp_protect(srtp_t ctx, void *rtp_hdr, int *len_ptr)
srtp_protect() is the Secure RTP sender-side packet processing function.
unsigned char m
Definition: srtp.h:125
uint32_t srtp_cipher_type_id_t
A srtp_cipher_type_id_t is an identifier for a particular cipher type.
Definition: srtp.h:221
srtp_err_status_t srtp_init(void)
srtp_init() initializes the srtp library.
Definition: srtp.c:2175
Definition: srtp_priv.h:108
srtp_err_status_t srtp_unprotect_rtcp(srtp_t ctx, void *srtcp_hdr, int *pkt_octet_len)
srtp_unprotect_rtcp() is the Secure RTCP receiver-side packet processing function.
Definition: srtp.c:3415
void srtp_append_salt_to_key(unsigned char *key, unsigned int bytes_in_key, unsigned char *salt, unsigned int bytes_in_salt)
appends the salt to the key
Definition: srtp.c:3768
EGLStreamKHR EGLint EGLint EGLint const void * data
Definition: eglext.h:984
void srtp_crypto_policy_set_rtcp_default(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_rtcp_default() sets a crypto policy structure to the SRTP default policy for R...
Definition: srtp.c:2626
srtp_err_status_t srtp_set_debug_module(char *mod_name, int v)
srtp_set_debug_module(mod_name, v)
Definition: srtp.c:3827
srtp_auth_type_id_t auth_type
Definition: srtp.h:311
unsigned char pt
Definition: srtp.h:166
void srtp_set_user_data(srtp_t ctx, void *data)
srtp_set_user_data() stores the given pointer into the SRTP session for later retrieval.
Definition: srtp.c:3690
unsigned int e
Definition: srtp.h:173
void srtp_crypto_policy_set_aes_cm_128_null_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_cm_128_null_auth() sets a crypto policy structure to an encryption-only po...
Definition: srtp.c:2657
unsigned int srtp_profile_get_master_salt_length(srtp_profile_t profile)
returns the master salt length for a given SRTP profile
Definition: srtp.c:3799
srtp_err_status_t srtp_protect_rtcp(srtp_t ctx, void *rtcp_hdr, int *pkt_octet_len)
srtp_protect_rtcp() is the Secure RTCP sender-side packet processing function.
Definition: srtp.c:3218
unsigned char pt
Definition: srtp.h:124
srtp_sec_serv_t
srtp_sec_serv_t describes a set of security services.
Definition: srtp.h:289
void srtp_crypto_policy_set_aes_cm_256_null_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_cm_256_null_auth() sets a crypto policy structure to an encryption-only po...
Definition: srtp.c:2745
struct srtp_crypto_policy_t srtp_crypto_policy_t
srtp_crypto_policy_t describes a particular crypto policy that can be applied to an SRTP stream...
srtp_err_status_t srtp_list_debug_modules(void)
srtp_list_debug_modules() outputs a list of debugging modules
Definition: srtp.c:3832
unsigned int value
Definition: srtp.h:352
unsigned char cc
Definition: srtp.h:120
unsigned long window_size
Definition: srtp.h:407
represents the policy for an SRTP session.
Definition: srtp.h:395
void srtp_crypto_policy_set_aes_gcm_256_8_only_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_gcm_256_8_only_auth() sets a crypto policy structure to an AEAD authentica...
void srtp_crypto_policy_set_rtp_default(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_rtp_default() sets a crypto policy structure to the SRTP default policy for RT...
Definition: srtp.c:2614
srtp_err_status_t srtp_dealloc(srtp_t s)
srtp_dealloc() deallocates storage for an SRTP session context.
Definition: srtp.c:2249
unsigned char p
Definition: srtp.h:122
srtp_err_status_t srtp_unprotect(srtp_t ctx, void *srtp_hdr, int *len_ptr)
srtp_unprotect() is the Secure RTP receiver-side packet processing function.
DOMString e
Definition: WebCryptoAPI.idl:115
srtp_err_status_t
Definition: srtp.h:245
const Profile profile
Definition: profile_level_id.cc:65
struct srtp_ekt_policy_ctx_t * srtp_ekt_policy_t
points to an EKT policy
Definition: srtp.h:359
void srtp_crypto_policy_set_aes_gcm_256_16_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_gcm_256_16_auth() sets a crypto policy structure to an AEAD encryption pol...
int allow_repeat_tx
Definition: srtp.h:409
srtp_err_status_t srtp_crypto_policy_set_from_profile_for_rtp(srtp_crypto_policy_t *policy, srtp_profile_t profile)
srtp_crypto_policy_set_from_profile_for_rtp() sets a crypto policy structure to the appropriate value...
Definition: srtp.c:3705
srtp_err_status_t srtp_remove_stream(srtp_t session, unsigned int ssrc)
srtp_remove_stream() deallocates an SRTP stream.
unsigned char rc
Definition: srtp.h:163
CFArrayRef CFTypeRef key
Definition: AVFoundationCFSoftLinking.h:129
srtp_sec_serv_t sec_serv
Definition: srtp.h:317
void() srtp_event_handler_func_t(srtp_event_data_t *data)
srtp_event_handler_func_t is the function prototype for the event handler.
Definition: srtp.h:1442
int auth_key_len
Definition: srtp.h:313
void srtp_crypto_policy_set_aes_gcm_128_8_only_auth(srtp_crypto_policy_t *p)
srtp_crypto_policy_set_aes_gcm_128_8_only_auth() sets a crypto policy structure to an AEAD authentica...
GLuint GLsizei GLsizei * length
Definition: gl2.h:435
An srtp_ssrc_t represents a particular SSRC value, or a `wildcard' SSRC.
Definition: srtp.h:350