Merge branch 'bugfix/wpa_supplicant_no_hw_mpi_v4.1' into 'release/v4.1'

wpa_supplicant: Allow building with mbedTLS integration but no hardware MPI (v4.1)

See merge request espressif/esp-idf!9013
This commit is contained in:
Angus Gratton 2020-06-04 16:22:14 +08:00
commit d35226c656
2 changed files with 7 additions and 5 deletions

View file

@ -1,4 +1,4 @@
// Copyright 2015-2016 Espressif Systems (Shanghai) PTE LTD // Copyright 2015-2020 Espressif Systems (Shanghai) PTE LTD
// //
// Licensed under the Apache License, Version 2.0 (the "License"); // Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License. // you may not use this file except in compliance with the License.
@ -11,10 +11,10 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and // See the License for the specific language governing permissions and
// limitations under the License. // limitations under the License.
#ifndef __ESP_MBEDTLS_BIGNUM_H__ #pragma once
#define __ESP_MBEDTLS_BIGNUM_H__
#include_next "mbedtls/bignum.h" #include_next "mbedtls/bignum.h"
#include "sdkconfig.h"
/** /**
* This is a wrapper for the main mbedtls/bignum.h. This wrapper * This is a wrapper for the main mbedtls/bignum.h. This wrapper
@ -58,6 +58,8 @@ void esp_mpi_acquire_hardware(void);
*/ */
void esp_mpi_release_hardware(void); void esp_mpi_release_hardware(void);
#if CONFIG_MBEDTLS_HARDWARE_MPI
/* @brief MPI modular mupltiplication function /* @brief MPI modular mupltiplication function
* *
* Calculates Z = (X * Y) mod M using MPI hardware acceleration. * Calculates Z = (X * Y) mod M using MPI hardware acceleration.
@ -75,4 +77,4 @@ void esp_mpi_release_hardware(void);
*/ */
int esp_mpi_mul_mpi_mod(mbedtls_mpi *Z, const mbedtls_mpi *X, const mbedtls_mpi *Y, const mbedtls_mpi *M); int esp_mpi_mul_mpi_mod(mbedtls_mpi *Z, const mbedtls_mpi *X, const mbedtls_mpi *Y, const mbedtls_mpi *M);
#endif #endif // CONFIG_MBEDTLS_HARDWARE_MPI

View file

@ -160,7 +160,7 @@ int crypto_bignum_mulmod(const struct crypto_bignum *a,
struct crypto_bignum *d) struct crypto_bignum *d)
{ {
int res; int res;
#if ALLOW_EVEN_MOD // Must enable this macro if c is even. #if ALLOW_EVEN_MOD || !CONFIG_MBEDTLS_HARDWARE_MPI // Must enable ALLOW_EVEN_MOD if c is even
mbedtls_mpi temp; mbedtls_mpi temp;
mbedtls_mpi_init(&temp); mbedtls_mpi_init(&temp);