diff --git a/include/mbedtls/ssl.h b/include/mbedtls/ssl.h
index e93617c..e3459cd 100644
--- a/include/mbedtls/ssl.h
+++ b/include/mbedtls/ssl.h
@@ -865,13 +865,15 @@
 /*
  * List of SRTP profiles for DTLS-SRTP
  */
-enum mbedtls_DTLS_SRTP_protection_profiles {
+typedef enum
+{
     MBEDTLS_SRTP_UNSET_PROFILE,
     MBEDTLS_SRTP_AES128_CM_HMAC_SHA1_80,
     MBEDTLS_SRTP_AES128_CM_HMAC_SHA1_32,
     MBEDTLS_SRTP_NULL_HMAC_SHA1_80,
     MBEDTLS_SRTP_NULL_HMAC_SHA1_32,
-};
+}
+mbedtls_dtls_srtp_protection_profiles;
 #endif /* MBEDTLS_SSL_DTLS_SRTP */
 
 /*
@@ -1084,7 +1086,7 @@
     /*
      * use_srtp extension
      */
-    enum mbedtls_DTLS_SRTP_protection_profiles *dtls_srtp_profiles_list; /*!< ordered list of supported srtp profile */
+    mbedtls_dtls_srtp_protection_profiles *dtls_srtp_profiles_list; /*!< ordered list of supported srtp profile */
     size_t dtls_srtp_profiles_list_len; /*!< number of supported profiles */
 #endif /* MBEDTLS_SSL_DTLS_SRTP */
 
@@ -1333,7 +1335,7 @@
     /*
      * use_srtp extension
      */
-    enum mbedtls_DTLS_SRTP_protection_profiles chosen_dtls_srtp_profile; /*!< negotiated SRTP profile */
+    mbedtls_dtls_srtp_protection_profiles chosen_dtls_srtp_profile; /*!< negotiated SRTP profile */
     unsigned char *dtls_srtp_keys; /*!< master keys and master salt for SRTP generated during handshake */
     size_t dtls_srtp_keys_len; /*!< length in bytes of master keys and master salt for SRTP generated during handshake */
 #endif /* MBEDTLS_SSL_DTLS_SRTP */
@@ -3171,7 +3173,7 @@
  *
  * \return         0 on success, or MBEDTLS_ERR_SSL_BAD_INPUT_DATA.
  */
-int mbedtls_ssl_conf_dtls_srtp_protection_profiles( mbedtls_ssl_config *conf, const enum mbedtls_DTLS_SRTP_protection_profiles *profiles, size_t profiles_number);
+int mbedtls_ssl_conf_dtls_srtp_protection_profiles( mbedtls_ssl_config *conf, const mbedtls_dtls_srtp_protection_profiles *profiles, size_t profiles_number);
 
 /**
  * \brief          Get the negotiated DTLS-SRTP Protection Profile.
@@ -3182,7 +3184,7 @@
  *
  * \return         Protection Profile enum member, MBEDTLS_SRTP_UNSET_PROFILE if no protocol was negotiated.
  */
-enum mbedtls_DTLS_SRTP_protection_profiles mbedtls_ssl_get_dtls_srtp_protection_profile( const mbedtls_ssl_context *ssl);
+mbedtls_dtls_srtp_protection_profiles mbedtls_ssl_get_dtls_srtp_protection_profile( const mbedtls_ssl_context *ssl);
 
 /**
  * \brief                  Get the generated DTLS-SRTP key material.
