openvpn: fix interface with mbedtls_sha256
authorRussell Senior <russell@personaltelco.net>
Fri, 16 Feb 2018 12:39:00 +0000 (04:39 -0800)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 17 Feb 2018 11:29:33 +0000 (12:29 +0100)
Between mbedtls 2.6.0 and 2.7.0, the void returning mbedtls_MODULE* functions
were deprecated in favor of functions returning an int error code.  Use
the new function mbedtls_sha256_ret().

Signed-off-by: Russell Senior <russell@personaltelco.net>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
package/network/services/openvpn/patches/300-mbedtls_dont_use_deprecated_sha256_function.patch [new file with mode: 0644]

diff --git a/package/network/services/openvpn/patches/300-mbedtls_dont_use_deprecated_sha256_function.patch b/package/network/services/openvpn/patches/300-mbedtls_dont_use_deprecated_sha256_function.patch
new file mode 100644 (file)
index 0000000..b9201a5
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/src/openvpn/ssl_mbedtls.c
++++ b/src/openvpn/ssl_mbedtls.c
+@@ -803,7 +803,7 @@ tls_ctx_personalise_random(struct tls_ro
+     {
+         mbedtls_x509_crt *cert = ctx->crt_chain;
+-        mbedtls_sha256(cert->tbs.p, cert->tbs.len, sha256_hash, false);
++        mbedtls_sha256_ret(cert->tbs.p, cert->tbs.len, sha256_hash, false);
+         if (0 != memcmp(old_sha256_hash, sha256_hash, sizeof(sha256_hash)))
+         {
+             mbedtls_ctr_drbg_update(cd_ctx, sha256_hash, 32);