mirror of
https://github.com/yuzu-emu/mbedtls.git
synced 2024-11-26 13:25:42 +01:00
Create PSA-specific helper function file
Create a specific file for helper functions that are related to the PSA API. The reason for a separate file is so that it can include <psa/crypto.h>, without forcing this header inclusion into every test suite. In this commit, psa_helpers.function doesn't need psa/crypto.h yet, but this will be the case in a subsequent commit. Move PSA_ASSERT to psa_helpers.function, since that's the sort of things it's for. Include "psa_helpers.function" from the PSA crypto tests. In the ITS test, don't include "psa_helpers". The ITS tests are meant to stand alone from the rest of the library.
This commit is contained in:
parent
894b424b85
commit
952f40962a
@ -104,6 +104,7 @@ $(BINARIES): %$(EXEXT): %.c $(DEP)
|
|||||||
echo " CC $<"
|
echo " CC $<"
|
||||||
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
||||||
|
|
||||||
|
$(filter test_suite_psa_crypto%, $(BINARIES)): psa_helpers.function
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
ifndef WINDOWS
|
ifndef WINDOWS
|
||||||
|
39
tests/psa_helpers.function
Normal file
39
tests/psa_helpers.function
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
/*
|
||||||
|
* Helper functions for tests that use the PSA API.
|
||||||
|
*/
|
||||||
|
/* Copyright (C) 2019, ARM Limited, All Rights Reserved
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*
|
||||||
|
* This file is part of mbed TLS (https://tls.mbed.org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_PSA_CRYPTO_SPM)
|
||||||
|
#include "spm/psa_defs.h"
|
||||||
|
#endif
|
||||||
|
#include <psa/crypto.h>
|
||||||
|
|
||||||
|
/** Evaluate an expression and fail the test case if it returns an error.
|
||||||
|
*
|
||||||
|
* \param expr The expression to evaluate. This is typically a call
|
||||||
|
* to a \c psa_xxx function that returns a value of type
|
||||||
|
* #psa_status_t.
|
||||||
|
*/
|
||||||
|
#define PSA_ASSERT( expr ) TEST_EQUAL( ( expr ), PSA_SUCCESS )
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Local Variables:
|
||||||
|
* mode: c
|
||||||
|
* End:
|
||||||
|
*/
|
@ -126,14 +126,6 @@ typedef enum
|
|||||||
#define TEST_EQUAL( expr1, expr2 ) \
|
#define TEST_EQUAL( expr1, expr2 ) \
|
||||||
TEST_ASSERT( ( expr1 ) == ( expr2 ) )
|
TEST_ASSERT( ( expr1 ) == ( expr2 ) )
|
||||||
|
|
||||||
/** Evaluate an expression and fail the test case if it returns an error.
|
|
||||||
*
|
|
||||||
* \param expr The expression to evaluate. This is typically a call
|
|
||||||
* to a \c psa_xxx function that returns a value of type
|
|
||||||
* #psa_status_t.
|
|
||||||
*/
|
|
||||||
#define PSA_ASSERT( expr ) TEST_EQUAL( ( expr ), PSA_SUCCESS )
|
|
||||||
|
|
||||||
/** Allocate memory dynamically and fail the test case if this fails.
|
/** Allocate memory dynamically and fail the test case if this fails.
|
||||||
*
|
*
|
||||||
* You must set \p pointer to \c NULL before calling this macro and
|
* You must set \p pointer to \c NULL before calling this macro and
|
||||||
|
@ -10,6 +10,11 @@
|
|||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
|
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||||
|
#include "mbedtls/psa_util.h"
|
||||||
|
#include "psa_helpers.function"
|
||||||
|
#endif
|
||||||
|
|
||||||
static int rnd_std_rand( void *rng_state, unsigned char *output, size_t len );
|
static int rnd_std_rand( void *rng_state, unsigned char *output, size_t len );
|
||||||
|
|
||||||
#define RSA_KEY_SIZE 512
|
#define RSA_KEY_SIZE 512
|
||||||
@ -67,8 +72,6 @@ size_t mbedtls_rsa_key_len_func( void *ctx )
|
|||||||
|
|
||||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||||
|
|
||||||
#include "mbedtls/psa_util.h"
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Generate a key using PSA and return a handle to that key,
|
* Generate a key using PSA and return a handle to that key,
|
||||||
* or 0 if the key generation failed.
|
* or 0 if the key generation failed.
|
||||||
|
@ -1,15 +1,11 @@
|
|||||||
/* BEGIN_HEADER */
|
/* BEGIN_HEADER */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#if defined(MBEDTLS_PSA_CRYPTO_SPM)
|
|
||||||
#include "spm/psa_defs.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "mbedtls/asn1.h"
|
#include "mbedtls/asn1.h"
|
||||||
#include "mbedtls/asn1write.h"
|
#include "mbedtls/asn1write.h"
|
||||||
#include "mbedtls/oid.h"
|
#include "mbedtls/oid.h"
|
||||||
|
|
||||||
#include "psa/crypto.h"
|
#include "psa_helpers.function"
|
||||||
|
|
||||||
/** An invalid export length that will never be set by psa_export_key(). */
|
/** An invalid export length that will never be set by psa_export_key(). */
|
||||||
static const size_t INVALID_EXPORT_LENGTH = ~0U;
|
static const size_t INVALID_EXPORT_LENGTH = ~0U;
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
/* BEGIN_HEADER */
|
/* BEGIN_HEADER */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#include "psa/crypto.h"
|
|
||||||
#include "mbedtls/entropy.h"
|
#include "mbedtls/entropy.h"
|
||||||
#include "mbedtls/entropy_poll.h"
|
#include "mbedtls/entropy_poll.h"
|
||||||
|
|
||||||
|
#include "psa_helpers.function"
|
||||||
#if defined(MBEDTLS_PSA_ITS_FILE_C)
|
#if defined(MBEDTLS_PSA_ITS_FILE_C)
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#else
|
#else
|
||||||
|
@ -2,11 +2,7 @@
|
|||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#if defined(MBEDTLS_PSA_CRYPTO_SPM)
|
#include "psa_helpers.function"
|
||||||
#include "spm/psa_defs.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "psa/crypto.h"
|
|
||||||
|
|
||||||
/* END_HEADER */
|
/* END_HEADER */
|
||||||
|
|
||||||
|
@ -1,11 +1,7 @@
|
|||||||
/* BEGIN_HEADER */
|
/* BEGIN_HEADER */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#if defined(MBEDTLS_PSA_CRYPTO_SPM)
|
#include "psa_helpers.function"
|
||||||
#include "spm/psa_defs.h"
|
|
||||||
#endif
|
|
||||||
#include "psa/crypto.h"
|
|
||||||
|
|
||||||
/* Some tests in this module configure entropy sources. */
|
/* Some tests in this module configure entropy sources. */
|
||||||
#include "psa_crypto_invasive.h"
|
#include "psa_crypto_invasive.h"
|
||||||
|
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
/* BEGIN_HEADER */
|
/* BEGIN_HEADER */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include "psa/crypto.h"
|
|
||||||
|
#include "psa_helpers.function"
|
||||||
#include "psa_crypto_storage.h"
|
#include "psa_crypto_storage.h"
|
||||||
|
|
||||||
#include "mbedtls/md.h"
|
#include "mbedtls/md.h"
|
||||||
|
|
||||||
#define PSA_KEY_STORAGE_MAGIC_HEADER "PSA\0KEY"
|
#define PSA_KEY_STORAGE_MAGIC_HEADER "PSA\0KEY"
|
||||||
|
@ -1,11 +1,7 @@
|
|||||||
/* BEGIN_HEADER */
|
/* BEGIN_HEADER */
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
#if defined(MBEDTLS_PSA_CRYPTO_SPM)
|
#include "psa_helpers.function"
|
||||||
#include "spm/psa_defs.h"
|
|
||||||
#endif
|
|
||||||
#include "psa/crypto.h"
|
|
||||||
|
|
||||||
#include "psa_crypto_storage.h"
|
#include "psa_crypto_storage.h"
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
/* BEGIN_HEADER */
|
/* BEGIN_HEADER */
|
||||||
#include "../library/psa_crypto_its.h"
|
#include "../library/psa_crypto_its.h"
|
||||||
|
|
||||||
|
#define PSA_ASSERT( expr ) TEST_EQUAL( ( expr ), PSA_SUCCESS )
|
||||||
|
|
||||||
/* Internal definitions of the implementation, copied for the sake of
|
/* Internal definitions of the implementation, copied for the sake of
|
||||||
* some of the tests and of the cleanup code. */
|
* some of the tests and of the cleanup code. */
|
||||||
#define PSA_ITS_STORAGE_PREFIX ""
|
#define PSA_ITS_STORAGE_PREFIX ""
|
||||||
|
Loading…
Reference in New Issue
Block a user