srtp.h 1.3 KB

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