Commit Graph

806 Commits (dc71ec4a81c63a87fc0ce5fe58dbb25923a8c6aa)

Author SHA1 Message Date
Oren Cohen 6b87427549 Use entropy injection on any NVseed platform or PSA dual-core/v8 2018-12-11 16:14:45 -06:00
Oren Cohen 6c1d08a503 Basic test can run on single v7's 2018-12-11 16:14:45 -06:00
Alex Volinski f07943d2b1 The inject test can run also on single core CPU's such as K64F 2018-12-11 16:14:45 -06:00
Oren Cohen fee5e42f95 Fix PSA crypto partiotion and tests
* Styling
* Correct error codes on failing connection
* Add panics where needed
* correct skip defines
* Fix psa_spm_init_refence_counter bug
2018-12-11 16:14:45 -06:00
itayzafrir df1d36a0aa Skip Mbed Crypto tests when when Mbed Crypto is OFF 2018-12-11 16:14:44 -06:00
Oren Cohen 132f00ee12 Test modifications
* Add support for entropy injection
* Move psa_crypto_init & mbedtls_psa_crypto_free to setup & teardown handlers
* Skip test_crypto_asymmetric_encrypt_decrypt if RSA generation is not supported
2018-12-11 16:14:44 -06:00
itayzafrir 447cd74aa2 Add license 2018-12-11 16:14:44 -06:00
itayzafrir 5ceeb6f69a Add mbed-crypto key derivation test 2018-12-11 16:14:44 -06:00
itayzafrir 4d55d53581 Add mbed-crypto asymmetric sign verify test 2018-12-11 16:14:44 -06:00
itayzafrir 51b11815cc Add mbed-crypto symmetric cipher encrypt decrypt test 2018-12-11 16:14:44 -06:00
itayzafrir e580d1e2a7 Add mbed-crypto hash verify test 2018-12-11 16:14:44 -06:00
itayzafrir 14bd3c3025 Add mbed-crypto asymmetric encrypt decrypt test 2018-12-11 16:14:44 -06:00
itayzafrir 5ee7a2f0ee Introduce mbed-crypto tests
Add tests setup code and random bytes generator test.
2018-12-11 16:14:44 -06:00
Oren Cohen 3b4750ba3e Run SPM code generator 2018-12-11 16:14:44 -06:00
Oren Cohen 094fedfec9 Add SPM code generation test to Travis-CI 2018-12-11 16:14:44 -06:00
Martin Kojtal 52822cb8af
Merge pull request #8871 from c1728p9/mpu
MPU API (Reopened)
2018-11-28 10:28:32 +01:00
Martin Kojtal e62abd8aee
Merge pull request #8804 from mohammad1603/inject_entropy_spm
PSA Crypto SPM
2018-11-28 09:40:31 +01:00
Martin Kojtal e69aa15aea
Merge pull request #8744 from kfnta/psa_spm_base
PSA Secure partition manager and services
2018-11-27 15:26:38 +01:00
Netanel Gonen 5f36447eb6 do not run crypto init SPM test if not SPM target 2018-11-27 15:29:14 +02:00
Alexander Zilberkant daeb19d167 Fix entropy_inject test compilation
Include to crypto.h file will fail on targets without TARGET_PSA support
Moving prerequisites check before include.
2018-11-27 11:57:01 +02:00
Alexander Zilberkant abf1ccc722 Disable crypto_init tests when Mbed Crypto is OFF 2018-11-27 11:57:00 +02:00
mohammad1603 88f4f48fac Astyle fixes for the source
Used running: astyle -n --options=.astylerc
2018-11-27 11:56:57 +02:00
Netanel Gonen 59c3c9fff7 crypto init with multiple client guard & tests 2018-11-27 11:56:48 +02:00
Netanel Gonen 73cb013ac6 skip inject entropy test if they not supported 2018-11-27 11:56:43 +02:00
Mohammad AboMokh 73ebe1a247 Fix inject entropy tests
* Call greentea_case_teardown_handler() and greentea_case_setup_handler() instead of return STATUS_CONTINUE
* Introduce and use new macro MBEDTLS_PSA_INJECT_ENTROPY_MIN_SIZE
2018-11-27 11:56:37 +02:00
Mohammad AboMokh 72037747b1 Update auto generated SPM files 2018-11-27 11:56:35 +02:00
Mohammad AboMokh 1325084b1a Add tests to PSA entropy injection 2018-11-27 11:56:33 +02:00
Oren Cohen f4581faab0 Create a new partition for the crypto service
The following files initially were taken
from https://github.com/ARMmbed/psa-crypto-spm/releases/tag/spm-crypto-5.11
* crypto_platform_spe.h
* crypto_struct.h
* crypto_struct_ipc.h
* psa_crypto_spm.c
* crypto_spe.h
* crypto_partition_psa.json

The rest of the files were autimatically generated
by tools/spm/generate_psa_partition.py
2018-11-27 11:56:29 +02:00
Russ Butler 7cdfbee28b Fix asyle problems
Run astyle to fix CI failures.
2018-11-27 09:29:33 +00:00
Russ Butler caa7b93921 Rename lock functions and classes
Invert the name of the lock functions and classes so you are not
locking a negative.
2018-11-27 09:29:32 +00:00
Russ Butler a7bf312106 Skip MPU fault tests for ARMv8-M
For enhanced security ARMv8-M firmware doesn't allow the hardfault
handler to be hooked by non-secure code. Because of this there is no
way to recover from the MPU fault tests. This PR disables those tests
until hardfault recovery is supported by secure firmware.
2018-11-27 09:29:32 +00:00
Russ Butler 47ac8ef3f0 Fix MPU test when MemManage fault enabled
Hook both the HardFault and the MemManage IRQs since it is up to the
target to determine which fault is enabled.
2018-11-27 09:29:32 +00:00
Russ Butler 24f002d6dc Clear caches before RAM execution in MPU test
Ensure that code written to ram is flushed and that caches are cleared
before attempting to executing from ram. This fixes CI failures on the
MPU test when it is built for Cotex-M7 devices such as the
NUCLEO-F746ZG.
2018-11-27 09:29:32 +00:00
Russ Butler 1821d37621 Overhaul MPU for new requirements
Make the following changes:
-Allow a vector specific ARM MPU driver by defining MBED_MPU_CUSTOM
-Allow ROM address to be configured for ARMv7-M devices by
    setting the define MBED_MPU_ROM_END
-Add ROM write protection
    -Add new functions and lock
    -enable at boot
    -disable during flash programming
2018-11-27 09:29:32 +00:00
Russ Butler 7283f9b0ee Add a formal HAL specification for the MPU API
Add a formal HAL specification consisting of:
-defined and undefined behavior
-test descriptions
-enable doxygen for MPU
2018-11-27 09:29:32 +00:00
Russ Butler d00f59fdc8 Rework MPU layout for future changes
Create a dedicated MPU directory for standard Arm MPU implementations
in preparation for the Arm v8m MPU. Replace MBED_MPU_ENABLED with
DEVICE_MPU to align with the porting layer of other HAL APIs.
2018-11-27 09:29:31 +00:00
Russ Butler c0ff98614a Disable the MPU when flashing
When programming flash using the FlashIAP API allow execution from
ram. Many devices require flashing to be done from RAM.

Also allow execution from ram when running the low level flash tests.
2018-11-27 09:29:31 +00:00
Russ Butler 8e2fd1a5cc Add an MPU test
Test that the MPU correctly stops execution of memory in the stack
region, heap region, data region and bss region. Also check that the
MPU can be enabled, disabled and freed.
2018-11-27 09:29:31 +00:00
Oren Cohen aea9713c89 Doxygen fixes in tests 2018-11-27 09:16:47 +02:00
Oren Cohen 773ac8dd95 CR fixes 2018-11-27 09:16:45 +02:00
Alexander Zilberkant 2b9f94a0ad Remove dead code 2018-11-27 09:16:45 +02:00
Oren Cohen 6cd4f7789f Add Version to SPM templates and generator 2018-11-27 09:16:43 +02:00
Oren Cohen 53be3cccfc Fix the SPM HAL test 2018-11-27 09:16:41 +02:00
Alexander Zilberkant 9cc017fd48 Normalize license headers
- add SPDX license identifier
- add missing license headers
- update year in license headers
2018-11-27 09:16:40 +02:00
Alexander Zilberkant aea01a86f6 astyle changes 2018-11-27 09:16:38 +02:00
Oren Cohen dd73fa689c PSA SPM
* Intorduce PSA-SPM to mbed-os
* Add SPM tests (for PSA targets)
* Add PSA PRoT internal storage Secure implementation
* Integrate SPM into the boot proccess
* PSA manifest data generator
* Introduce PSA targets skeleton to mbed-os
* Add artifact delivery to the tools
2018-11-27 09:16:35 +02:00
deepikabhavnani c272377a81 Make sure no memory overhead if statistics are disabled 2018-11-26 09:42:45 -06:00
deepikabhavnani 068f2d14c0 Resolve IAR build issue
IAR not able to assign default zero value in array and complaints of
internal error as below:

[ERROR] Internal error: [Front end]: assertion failed at:
"..\..\Translator\compiler_core\src\parser\edg\decl_inits.c", line 2031
2018-11-26 09:42:45 -06:00
deepikabhavnani 117eb0bc87 Add socketstats stub functions for unittest and addressed reviews 2018-11-26 09:42:50 -06:00
Deepika f6c1a40b29 Add config options for socket statistics
1. MBED_CONF_NSAPI_SOCKET_STATS_ENABLE to enable the statistics
2. MBED_CONF_NSAPI_SOCKET_STATS_MAX_COUNT max sockets statistics cached
2018-11-26 09:42:45 -06:00