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