desktop/bzrtp/mbedtls2.patch
2015-12-22 12:48:25 +01:00

105 lines
3.8 KiB
Diff

diff -wbBur bzrtp-1.0.3/configure.ac bzrtp-1.0.3.my/configure.ac
--- bzrtp-1.0.3/configure.ac 2015-11-02 16:41:21.000000000 +0300
+++ bzrtp-1.0.3.my/configure.ac 2015-11-03 18:28:22.098298959 +0300
@@ -44,9 +44,9 @@
LIBS_save=$LIBS
LIBS="$LIBS $POLARSSL_LIBS"
-AC_CHECK_LIB(mbedtls, ssl_init , [POLARSSL_LIBS="$POLARSSL_LIBS -lmbedtls"],
+AC_CHECK_LIB(mbedtls, mbedtls_ssl_init , [POLARSSL_LIBS="$POLARSSL_LIBS -lmbedtls"],
[
- AC_CHECK_LIB(polarssl, ssl_init, [POLARSSL_LIBS="$POLARSSL_LIBS -lpolarssl"],
+ AC_CHECK_LIB(polarssl, mbedtls_ssl_init, [POLARSSL_LIBS="$POLARSSL_LIBS -lmbedtls"],
[ AC_MSG_ERROR([Polarssl or mbedTLS library not found]) ]
)
])
diff -wbBur bzrtp-1.0.3/src/cryptoPolarssl.c bzrtp-1.0.3.my/src/cryptoPolarssl.c
--- bzrtp-1.0.3/src/cryptoPolarssl.c 2015-11-02 16:41:21.000000000 +0300
+++ bzrtp-1.0.3.my/src/cryptoPolarssl.c 2015-11-03 18:23:56.821626356 +0300
@@ -25,17 +25,18 @@
#include <string.h>
/* Random number generator */
-#include "polarssl/entropy.h"
-#include "polarssl/ctr_drbg.h"
+#include "mbedtls/compat-1.3.h"
+#include "mbedtls/entropy.h"
+#include "mbedtls/ctr_drbg.h"
/* Hash function sha1(sha2 is different for polarssl v1.2 and v1.3 ) */
-#include "polarssl/sha1.h"
+#include "mbedtls/md.h"
/* Asymmetrics encryption */
-#include "polarssl/dhm.h"
+#include "mbedtls/dhm.h"
/* Symmetric encryption */
-#include "polarssl/aes.h"
+#include "mbedtls/aes.h"
#include "cryptoWrapper.h"
@@ -133,7 +134,8 @@
entropy_init(&(polarsslContext->entropyContext)); /* init the polarssl entropy engine */
/* init the polarssl rng context */
- if (ctr_drbg_init(&(polarsslContext->rngContext), entropy_func, &(polarsslContext->entropyContext), (const unsigned char *)entropyString, entropyStringLength) != 0) {
+ ctr_drbg_init(&(polarsslContext->rngContext));
+ if (mbedtls_ctr_drbg_seed(&(polarsslContext->rngContext), entropy_func, &(polarsslContext->entropyContext), (const unsigned char *)entropyString, entropyStringLength) != 0) {
return NULL;
}
@@ -183,7 +185,8 @@
uint8_t *output)
{
uint8_t hmacOutput[20];
- sha1_hmac(key, keyLength, input, inputLength, hmacOutput);
+ const mbedtls_md_info_t *mdinfo = mbedtls_md_info_from_type(MBEDTLS_MD_SHA1);
+ mbedtls_md_hmac(mdinfo, key, keyLength, input, inputLength, hmacOutput);
/* check output length, can't be>20 */
if (hmacLength>20) {
@@ -396,11 +399,11 @@
/*** End of code common to polarSSL version 1.2 and 1.3 ***/
/* check polarssl version */
-#include <polarssl/version.h>
+#include <mbedtls/version.h>
#if POLARSSL_VERSION_NUMBER >= 0x01030000 /* for Polarssl version 1.3 */
/* Hashs */
-#include "polarssl/sha256.h"
+#include "mbedtls/sha256.h"
/*
* @brief SHA256 wrapper
@@ -444,7 +447,8 @@
uint8_t *output)
{
uint8_t hmacOutput[32];
- sha256_hmac(key, keyLength, input, inputLength, hmacOutput, 0); /* last param to zero to select SHA256 and not SHA224 */
+ const mbedtls_md_info_t *mdinfo = mbedtls_md_info_from_type(MBEDTLS_MD_SHA256);
+ mbedtls_md_hmac(mdinfo, key, keyLength, input, inputLength, hmacOutput);
/* check output length, can't be>32 */
if (hmacLength>32) {
@@ -464,7 +468,7 @@
/* compute the secret key */
keyLength = context->primeLength; /* undocumented but this value seems to be in/out, so we must set it to the expected key length */
context->key = (uint8_t *)malloc(keyLength*sizeof(uint8_t)); /* allocate key buffer */
- dhm_calc_secret((dhm_context *)(context->cryptoModuleData), context->key, &keyLength, (int (*)(void *, unsigned char *, size_t))rngFunction, rngContext);
+ dhm_calc_secret((dhm_context *)(context->cryptoModuleData), context->key, keyLength, &keyLength, (int (*)(void *, unsigned char *, size_t))rngFunction, rngContext);
}
@@ -472,7 +476,7 @@
#else /* POLAR SSL VERSION 1.2 */
/* Hashs */
-#include "polarssl/sha2.h"
+#include "mbedtls/sha2.h"
/*
* @brief SHA256 wrapper