Add interface for truncated hmac
diff --git a/include/polarssl/ssl.h b/include/polarssl/ssl.h
index 4e1d25a..1403ab3 100644
--- a/include/polarssl/ssl.h
+++ b/include/polarssl/ssl.h
@@ -148,6 +148,9 @@
#define SSL_LEGACY_ALLOW_RENEGOTIATION 1
#define SSL_LEGACY_BREAK_HANDSHAKE 2
+#define SSL_TRUNC_HMAC_DISABLED 0
+#define SSL_TRUNC_HMAC_ENABLED 1
+
/*
* Size of the input / output buffer.
* Note: the RFC defines the default size of SSL / TLS messages. If you
@@ -540,6 +543,7 @@
int disable_renegotiation; /*!< enable/disable renegotiation */
int allow_legacy_renegotiation; /*!< allow legacy renegotiation */
const int *ciphersuite_list[4]; /*!< allowed ciphersuites / version */
+ int trunc_hmac; /*!< negotiate truncated hmac? */
#if defined(POLARSSL_DHM_C)
mpi dhm_P; /*!< prime modulus for DHM */
@@ -977,6 +981,16 @@
int ssl_set_max_frag_len( ssl_context *ssl, unsigned char mfl_code );
/**
+ * \brief Activate negotiation of truncated HMAC (Client only)
+ *
+ * \param ssl SSL context
+ *
+ * \return O if successful,
+ * POLARSSL_ERR_SSL_BAD_INPUT_DATA if used server-side
+ */
+int ssl_set_truncated_hmac( ssl_context *ssl );
+
+/**
* \brief Enable / Disable renegotiation support for connection when
* initiated by peer
* (Default: SSL_RENEGOTIATION_DISABLED)