Counter based implementation for the flow protection mechanism, for a local security counter. More...
#include <mcuxCsslCPreProcessor.h>#include <mcuxCsslSecureCounter.h>#include <mcuxClCore_Macros.h>#include <stdint.h>#include <stdbool.h>Go to the source code of this file.
Macros | |
| #define | MCUX_CSSL_FP_RESULT_OFFSET |
| Offset of the result in the return value. | |
| #define | MCUX_CSSL_FP_RESULT_MASK |
| Bitmask of the result in the return value. | |
| #define | MCUX_CSSL_FP_RESULT_VALUE(result) |
| Encode a result value for a protected return value. | |
| #define | MCUX_CSSL_FP_PROTECTION_OFFSET |
| Offset of the protection token in the return value. | |
| #define | MCUX_CSSL_FP_PROTECTION_MASK |
| Bitmask of the protection token in the return value. | |
| #define | MCUX_CSSL_FP_PROTECTION_TOKEN_VALUE(token) |
| Encode a protection token for a protected return value. | |
| #define | MCUX_CSSL_FP_COUNTER_COMPRESSED() |
| Compressed version of the secure counter that can be used as a protection token. | |
| #define | MCUX_CSSL_FP_PROTECTED_TYPE_IMPL(resultType) |
| Based on a given base type, builds a return type with flow protection. | |
| #define | MCUX_CSSL_FP_RESULT_IMPL2(type, return) |
Extract the result value from a protected return value. | |
| #define | MCUX_CSSL_FP_RESULT_IMPL1(return) |
Extract the result value from a protected return value. | |
| #define | MCUX_CSSL_FP_RESULT_IMPL(...) |
Extract the result value from a protected return value. | |
| #define | MCUX_CSSL_FP_PROTECTION_TOKEN_IMPL(return) |
Extract the protection token value from a protected return value. | |
| #define | MCUX_CSSL_FP_FUNCTION_ENTRY_IMPLn(function, ...) |
| Flow protection handler implementation for the function entry point. | |
| #define | MCUX_CSSL_FP_FUNCTION_ENTRY_IMPL1(function) |
| Flow protection handler implementation for the function entry point. | |
| #define | MCUX_CSSL_FP_FUNCTION_ENTRY_IMPL(...) |
| Flow protection handler implementation for the function entry point. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_IMPLn(id, result, ...) |
| Flow protection handler implementation for the function exit point. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_IMPL1(id) |
| Flow protection handler implementation for the function exit point. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_IMPL2(id, result) |
| Flow protection handler implementation for the function exit point. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_IMPL(...) |
| Flow protection handler implementation for the function exit point. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_WITH_CHECK_IMPLn(id, pass, fail, ...) |
| Flow protection handler implementation for the function exit point which includes an actual check of the code flow. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_WITH_CHECK_IMPL3(id, pass, fail) |
| Flow protection handler implementation for the function exit point which includes an actual check of the code flow. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_WITH_CHECK_IMPL(...) |
| Flow protection handler implementation for the function exit point which includes an actual check of the code flow. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_VOID_IMPL1(id) |
Flow protection handler for the exit point of functions with the return type void. | |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_VOID_IMPLn(id, ...) |
| #define | MCUX_CSSL_FP_FUNCTION_EXIT_VOID_IMPL(...) |
Flow protection handler for the exit point of functions with the return type void. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_IMPL3(type, result, call) |
| Event implementation of a flow protected function call. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_IMPL2(result, call) |
| Event implementation of a flow protected function call. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_IMPL(...) |
| Event implementation of a flow protected function call. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_VOID_IMPL(call) |
| Event implementation of a flow protected void function call. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_PROTECTED_IMPL(result, token, call) |
| Implementation of a flow protected function call meant to be used from within an unprotected function. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_VOID_PROTECTED_IMPL(token, call) |
| Implementation of a flow protected void function call meant to be used from within an unprotected function. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_BEGIN_IMPL(result, token, call) |
| Implementation of a flow protected function call meant to be used from within an unprotected function, that must be terminated by MCUX_CSSL_FP_FUNCTION_CALL_END_IMPL. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_END_IMPL() |
| Implementation of the end of a section started by MCUX_CSSL_FP_FUNCTION_CALL_BEGIN_IMPL. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_VOID_BEGIN_IMPL(token, call) |
| Implementation of a flow protected void function call meant to be used from within an unprotected function, that must be terminated by MCUX_CSSL_FP_FUNCTION_CALL_VOID_END_IMPL. | |
| #define | MCUX_CSSL_FP_FUNCTION_CALL_VOID_END_IMPL() |
| Implementation of the end of a section started by MCUX_CSSL_FP_FUNCTION_CALL_VOID_BEGIN_IMPL. | |
| #define | MCUX_CSSL_FP_LOOP_ITERATION_IMPLn(id, ...) |
| Event implementation of a loop iteration (with expectations). | |
| #define | MCUX_CSSL_FP_BRANCH_SCENARIO_IMPL(id, scenario, ...) |
| Event implementation for the execution of a specified branch scenario. | |
| #define | MCUX_CSSL_FP_SWITCH_CASE_IMPLn(id, case, ...) |
| Case that is being handled from a switch. | |
| #define | MCUX_CSSL_FP_ASSERT_IMPL(...) |
| Assert an expected state of the code flow. | |
Counter based implementation for the flow protection mechanism, for a local security counter.