mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-08-13 17:38:59 +00:00
update libsrtp to use openssl
This commit is contained in:
@@ -88,6 +88,13 @@ extern "C" {
|
||||
*/
|
||||
#define SRTP_MAX_TRAILER_LEN SRTP_MAX_TAG_LEN
|
||||
|
||||
/*
|
||||
* SRTP_AEAD_SALT_LEN is the length of the SALT values used with
|
||||
* GCM mode. GCM mode requires an IV. The SALT value is used
|
||||
* as part of the IV formation logic applied to each RTP packet.
|
||||
*/
|
||||
#define SRTP_AEAD_SALT_LEN 12
|
||||
|
||||
/*
|
||||
* nota bene: since libSRTP doesn't support the use of the MKI, the
|
||||
* SRTP_MAX_TRAILER_LEN value is just the maximum tag length
|
||||
@@ -663,6 +670,130 @@ void crypto_policy_set_aes_cm_256_hmac_sha1_80(crypto_policy_t *p);
|
||||
void
|
||||
crypto_policy_set_aes_cm_256_hmac_sha1_32(crypto_policy_t *p);
|
||||
|
||||
/**
|
||||
* @brief crypto_policy_set_aes_cm_256_null_auth() sets a crypto
|
||||
* policy structure to an encryption-only policy
|
||||
*
|
||||
* @param p is a pointer to the policy structure to be set
|
||||
*
|
||||
* The function call crypto_policy_set_aes_cm_256_null_auth(&p) sets
|
||||
* the crypto_policy_t at location p to use the SRTP default cipher
|
||||
* (AES-256 Counter Mode), but to use no authentication method. This
|
||||
* policy is NOT RECOMMENDED unless it is unavoidable; see Section 7.5
|
||||
* of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt).
|
||||
*
|
||||
* This function is a convenience that helps to avoid dealing directly
|
||||
* with the policy data structure. You are encouraged to initialize
|
||||
* policy elements with this function call. Doing so may allow your
|
||||
* code to be forward compatible with later versions of libSRTP that
|
||||
* include more elements in the crypto_policy_t datatype.
|
||||
*
|
||||
* @warning This policy is NOT RECOMMENDED for SRTP unless it is
|
||||
* unavoidable, and it is NOT RECOMMENDED at all for SRTCP; see
|
||||
* Section 7.5 of RFC 3711 (http://www.ietf.org/rfc/rfc3711.txt).
|
||||
*
|
||||
* @return void.
|
||||
*
|
||||
*/
|
||||
void
|
||||
crypto_policy_set_aes_cm_256_null_auth(crypto_policy_t *p);
|
||||
|
||||
/**
|
||||
* @brief crypto_policy_set_aes_gcm_128_8_auth() sets a crypto
|
||||
* policy structure to an AEAD encryption policy.
|
||||
*
|
||||
* @param p is a pointer to the policy structure to be set
|
||||
*
|
||||
* The function call crypto_policy_set_aes_gcm_128_8_auth(&p) sets
|
||||
* the crypto_policy_t at location p to use the SRTP default cipher
|
||||
* (AES-128 Galois Counter Mode) with 8 octet auth tag. This
|
||||
* policy applies confidentiality and authentication to both the
|
||||
* RTP and RTCP packets.
|
||||
*
|
||||
* This function is a convenience that helps to avoid dealing directly
|
||||
* with the policy data structure. You are encouraged to initialize
|
||||
* policy elements with this function call. Doing so may allow your
|
||||
* code to be forward compatible with later versions of libSRTP that
|
||||
* include more elements in the crypto_policy_t datatype.
|
||||
*
|
||||
* @return void.
|
||||
*
|
||||
*/
|
||||
void
|
||||
crypto_policy_set_aes_gcm_128_8_auth(crypto_policy_t *p);
|
||||
|
||||
/**
|
||||
* @brief crypto_policy_set_aes_gcm_256_8_auth() sets a crypto
|
||||
* policy structure to an AEAD encryption policy
|
||||
*
|
||||
* @param p is a pointer to the policy structure to be set
|
||||
*
|
||||
* The function call crypto_policy_set_aes_gcm_256_8_auth(&p) sets
|
||||
* the crypto_policy_t at location p to use the SRTP default cipher
|
||||
* (AES-256 Galois Counter Mode) with 8 octet auth tag. This
|
||||
* policy applies confidentiality and authentication to both the
|
||||
* RTP and RTCP packets.
|
||||
*
|
||||
* This function is a convenience that helps to avoid dealing directly
|
||||
* with the policy data structure. You are encouraged to initialize
|
||||
* policy elements with this function call. Doing so may allow your
|
||||
* code to be forward compatible with later versions of libSRTP that
|
||||
* include more elements in the crypto_policy_t datatype.
|
||||
*
|
||||
* @return void.
|
||||
*
|
||||
*/
|
||||
void
|
||||
crypto_policy_set_aes_gcm_256_8_auth(crypto_policy_t *p);
|
||||
|
||||
/**
|
||||
* @brief crypto_policy_set_aes_gcm_128_8_only_auth() sets a crypto
|
||||
* policy structure to an AEAD authentication-only policy
|
||||
*
|
||||
* @param p is a pointer to the policy structure to be set
|
||||
*
|
||||
* The function call crypto_policy_set_aes_gcm_128_8_only_auth(&p) sets
|
||||
* the crypto_policy_t at location p to use the SRTP default cipher
|
||||
* (AES-128 Galois Counter Mode) with 8 octet auth tag. This policy
|
||||
* applies confidentiality and authentication to the RTP packets,
|
||||
* but only authentication to the RTCP packets.
|
||||
*
|
||||
* This function is a convenience that helps to avoid dealing directly
|
||||
* with the policy data structure. You are encouraged to initialize
|
||||
* policy elements with this function call. Doing so may allow your
|
||||
* code to be forward compatible with later versions of libSRTP that
|
||||
* include more elements in the crypto_policy_t datatype.
|
||||
*
|
||||
* @return void.
|
||||
*
|
||||
*/
|
||||
void
|
||||
crypto_policy_set_aes_gcm_128_8_only_auth(crypto_policy_t *p);
|
||||
|
||||
/**
|
||||
* @brief crypto_policy_set_aes_gcm_256_8_only_auth() sets a crypto
|
||||
* policy structure to an AEAD authentication-only policy
|
||||
*
|
||||
* @param p is a pointer to the policy structure to be set
|
||||
*
|
||||
* The function call crypto_policy_set_aes_gcm_256_8_only_auth(&p) sets
|
||||
* the crypto_policy_t at location p to use the SRTP default cipher
|
||||
* (AES-256 Galois Counter Mode) with 8 octet auth tag. This policy
|
||||
* applies confidentiality and authentication to the RTP packets,
|
||||
* but only authentication to the RTCP packets.
|
||||
*
|
||||
* This function is a convenience that helps to avoid dealing directly
|
||||
* with the policy data structure. You are encouraged to initialize
|
||||
* policy elements with this function call. Doing so may allow your
|
||||
* code to be forward compatible with later versions of libSRTP that
|
||||
* include more elements in the crypto_policy_t datatype.
|
||||
*
|
||||
* @return void.
|
||||
*
|
||||
*/
|
||||
void
|
||||
crypto_policy_set_aes_gcm_256_8_only_auth(crypto_policy_t *p);
|
||||
|
||||
|
||||
/**
|
||||
* @brief srtp_dealloc() deallocates storage for an SRTP session
|
||||
|
Reference in New Issue
Block a user