1e71b7053SJung-uk Kim /* 2e71b7053SJung-uk Kim * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. 3e71b7053SJung-uk Kim * 4*b077aed3SPierre Pronchery * Licensed under the Apache License 2.0 (the "License"). You may not use 5e71b7053SJung-uk Kim * this file except in compliance with the License. You can obtain a copy 6e71b7053SJung-uk Kim * in the file LICENSE in the source distribution or at 7e71b7053SJung-uk Kim * https://www.openssl.org/source/license.html 8e71b7053SJung-uk Kim */ 9e71b7053SJung-uk Kim 10e71b7053SJung-uk Kim /* 11e71b7053SJung-uk Kim * DTLS code by Eric Rescorla <ekr@rtfm.com> 12e71b7053SJung-uk Kim * 13e71b7053SJung-uk Kim * Copyright (C) 2006, Network Resonance, Inc. Copyright (C) 2011, RTFM, Inc. 14e71b7053SJung-uk Kim */ 15e71b7053SJung-uk Kim 16*b077aed3SPierre Pronchery #ifndef OPENSSL_SRTP_H 17*b077aed3SPierre Pronchery # define OPENSSL_SRTP_H 18*b077aed3SPierre Pronchery # pragma once 19*b077aed3SPierre Pronchery 20*b077aed3SPierre Pronchery # include <openssl/macros.h> 21*b077aed3SPierre Pronchery # ifndef OPENSSL_NO_DEPRECATED_3_0 22e71b7053SJung-uk Kim # define HEADER_D1_SRTP_H 23*b077aed3SPierre Pronchery # endif 24e71b7053SJung-uk Kim 25e71b7053SJung-uk Kim # include <openssl/ssl.h> 26e71b7053SJung-uk Kim 27e71b7053SJung-uk Kim #ifdef __cplusplus 28e71b7053SJung-uk Kim extern "C" { 29e71b7053SJung-uk Kim #endif 30e71b7053SJung-uk Kim 31e71b7053SJung-uk Kim # define SRTP_AES128_CM_SHA1_80 0x0001 32e71b7053SJung-uk Kim # define SRTP_AES128_CM_SHA1_32 0x0002 33e71b7053SJung-uk Kim # define SRTP_AES128_F8_SHA1_80 0x0003 34e71b7053SJung-uk Kim # define SRTP_AES128_F8_SHA1_32 0x0004 35e71b7053SJung-uk Kim # define SRTP_NULL_SHA1_80 0x0005 36e71b7053SJung-uk Kim # define SRTP_NULL_SHA1_32 0x0006 37e71b7053SJung-uk Kim 38e71b7053SJung-uk Kim /* AEAD SRTP protection profiles from RFC 7714 */ 39e71b7053SJung-uk Kim # define SRTP_AEAD_AES_128_GCM 0x0007 40e71b7053SJung-uk Kim # define SRTP_AEAD_AES_256_GCM 0x0008 41e71b7053SJung-uk Kim 42e71b7053SJung-uk Kim # ifndef OPENSSL_NO_SRTP 43e71b7053SJung-uk Kim 44e71b7053SJung-uk Kim __owur int SSL_CTX_set_tlsext_use_srtp(SSL_CTX *ctx, const char *profiles); 45e71b7053SJung-uk Kim __owur int SSL_set_tlsext_use_srtp(SSL *ssl, const char *profiles); 46e71b7053SJung-uk Kim 47e71b7053SJung-uk Kim __owur STACK_OF(SRTP_PROTECTION_PROFILE) *SSL_get_srtp_profiles(SSL *ssl); 48e71b7053SJung-uk Kim __owur SRTP_PROTECTION_PROFILE *SSL_get_selected_srtp_profile(SSL *s); 49e71b7053SJung-uk Kim 50e71b7053SJung-uk Kim # endif 51e71b7053SJung-uk Kim 52e71b7053SJung-uk Kim #ifdef __cplusplus 53e71b7053SJung-uk Kim } 54e71b7053SJung-uk Kim #endif 55e71b7053SJung-uk Kim 56e71b7053SJung-uk Kim #endif 57