OPTIGA Trust M  1.1.0
C++ library for Optiga Trust M Chip Security Controller
optiga_lib_config.h File Reference

This file is defines the compilation switches to build code with required features. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define OPTIGA_CRYPT_RANDOM_ENABLED
 OPTIGA CRYPT random number generation feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_HASH_ENABLED
 OPTIGA CRYPT hash feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_ECC_GENERATE_KEYPAIR_ENABLED
 OPTIGA CRYPT ECC generate keypair feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_ECDSA_SIGN_ENABLED
 OPTIGA CRYPT ECDSA signature feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_ECDSA_VERIFY_ENABLED
 OPTIGA CRYPT verify ECDSA signature feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_ECDH_ENABLED
 OPTIGA CRYPT ECDH feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_TLS_PRF_SHA256_ENABLED
 OPTIGA CRYPT TLS PRF sha256 feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_RSA_GENERATE_KEYPAIR_ENABLED
 OPTIGA CRYPT RSA generate keypair feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_RSA_SIGN_ENABLED
 OPTIGA CRYPT RSA sign feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_RSA_VERIFY_ENABLED
 OPTIGA CRYPT RSA verify sign feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_RSA_ENCRYPT_ENABLED
 OPTIGA CRYPT RSA Encrypt feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_RSA_DECRYPT_ENABLED
 OPTIGA CRYPT RSA Decrypt feature enable/disable macro. More...
 
#define OPTIGA_CRYPT_RSA_PRE_MASTER_SECRET_ENABLED
 OPTIGA CRYPT RSA pre-master feature enable/disable macro. More...
 
#define OPTIGA_LIB_DEBUG_NULL_CHECK   (1U)
 NULL parameter check. To disable the check, undefine the macro. More...
 
#define OPTIGA_CMD_MAX_REGISTRATIONS   (0x06)
 Maximum number of instance registration. More...
 
#define OPTIGA_MAX_COMMS_BUFFER_SIZE   (0x615)
 Maximum buffer size required to communicate with OPTIGA. More...
 
#define OPTIGA_LIB_ENABLE_LOGGING
 Macro to enable logger
Enable macro OPTIGA_LIB_ENABLE_UTIL_LOGGING for Util Service layer logging
Enable macro OPTIGA_LIB_ENABLE_CRYPT_LOGGING for Crypt Service layer logging
Enable macro OPTIGA_LIB_ENABLE_CMD_LOGGING for Command layer logging
Enable macro OPTIGA_LIB_ENABLE_COMMS_LOGGING for Communication layer logging. More...
 
#define OPTIGA_COMMS_SHIELDED_CONNECTION
 OPTIGA COMMS shielded connection feature. To disable the feature, undefine the macro. More...
 
#define OPTIGA_COMMS_DEFAULT_PROTECTION_LEVEL   OPTIGA_COMMS_NO_PROTECTION
 Default reset protection level for OPTIGA CRYPT and UTIL APIs. More...
 
#define OPTIGA_COMMS_DEFAULT_RESET_TYPE   (0)
 Default reset type in optiga_comms_open.
Cold Reset - (0) : This is applicable if the host platform has GPIO option for RST and VDD.
Soft Reset - (1) : This is applicable if the host platform doesn't have GPIO options for VDD and RST.
Warm Reset - (2) : This is applicable if the host platform doesn't have GPIO option for VDD.
Any other value will lead to error. More...
 

Detailed Description

This file is defines the compilation switches to build code with required features.

Copyright (c) 2019 Infineon Technologies AG

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE

\endcopyright

Author
Infineon Technologies AG

Macro Definition Documentation

◆ OPTIGA_CMD_MAX_REGISTRATIONS

#define OPTIGA_CMD_MAX_REGISTRATIONS   (0x06)

Maximum number of instance registration.

◆ OPTIGA_COMMS_DEFAULT_PROTECTION_LEVEL

#define OPTIGA_COMMS_DEFAULT_PROTECTION_LEVEL   OPTIGA_COMMS_NO_PROTECTION

Default reset protection level for OPTIGA CRYPT and UTIL APIs.

◆ OPTIGA_COMMS_DEFAULT_RESET_TYPE

#define OPTIGA_COMMS_DEFAULT_RESET_TYPE   (0)

Default reset type in optiga_comms_open.
Cold Reset - (0) : This is applicable if the host platform has GPIO option for RST and VDD.
Soft Reset - (1) : This is applicable if the host platform doesn't have GPIO options for VDD and RST.
Warm Reset - (2) : This is applicable if the host platform doesn't have GPIO option for VDD.
Any other value will lead to error.

◆ OPTIGA_COMMS_SHIELDED_CONNECTION

#define OPTIGA_COMMS_SHIELDED_CONNECTION

OPTIGA COMMS shielded connection feature. To disable the feature, undefine the macro.

◆ OPTIGA_CRYPT_ECC_GENERATE_KEYPAIR_ENABLED

#define OPTIGA_CRYPT_ECC_GENERATE_KEYPAIR_ENABLED

OPTIGA CRYPT ECC generate keypair feature enable/disable macro.

◆ OPTIGA_CRYPT_ECDH_ENABLED

#define OPTIGA_CRYPT_ECDH_ENABLED

OPTIGA CRYPT ECDH feature enable/disable macro.

◆ OPTIGA_CRYPT_ECDSA_SIGN_ENABLED

#define OPTIGA_CRYPT_ECDSA_SIGN_ENABLED

OPTIGA CRYPT ECDSA signature feature enable/disable macro.

◆ OPTIGA_CRYPT_ECDSA_VERIFY_ENABLED

#define OPTIGA_CRYPT_ECDSA_VERIFY_ENABLED

OPTIGA CRYPT verify ECDSA signature feature enable/disable macro.

◆ OPTIGA_CRYPT_HASH_ENABLED

#define OPTIGA_CRYPT_HASH_ENABLED

OPTIGA CRYPT hash feature enable/disable macro.

◆ OPTIGA_CRYPT_RANDOM_ENABLED

#define OPTIGA_CRYPT_RANDOM_ENABLED

OPTIGA CRYPT random number generation feature enable/disable macro.

◆ OPTIGA_CRYPT_RSA_DECRYPT_ENABLED

#define OPTIGA_CRYPT_RSA_DECRYPT_ENABLED

OPTIGA CRYPT RSA Decrypt feature enable/disable macro.

◆ OPTIGA_CRYPT_RSA_ENCRYPT_ENABLED

#define OPTIGA_CRYPT_RSA_ENCRYPT_ENABLED

OPTIGA CRYPT RSA Encrypt feature enable/disable macro.

◆ OPTIGA_CRYPT_RSA_GENERATE_KEYPAIR_ENABLED

#define OPTIGA_CRYPT_RSA_GENERATE_KEYPAIR_ENABLED

OPTIGA CRYPT RSA generate keypair feature enable/disable macro.

◆ OPTIGA_CRYPT_RSA_PRE_MASTER_SECRET_ENABLED

#define OPTIGA_CRYPT_RSA_PRE_MASTER_SECRET_ENABLED

OPTIGA CRYPT RSA pre-master feature enable/disable macro.

◆ OPTIGA_CRYPT_RSA_SIGN_ENABLED

#define OPTIGA_CRYPT_RSA_SIGN_ENABLED

OPTIGA CRYPT RSA sign feature enable/disable macro.

◆ OPTIGA_CRYPT_RSA_VERIFY_ENABLED

#define OPTIGA_CRYPT_RSA_VERIFY_ENABLED

OPTIGA CRYPT RSA verify sign feature enable/disable macro.

◆ OPTIGA_CRYPT_TLS_PRF_SHA256_ENABLED

#define OPTIGA_CRYPT_TLS_PRF_SHA256_ENABLED

OPTIGA CRYPT TLS PRF sha256 feature enable/disable macro.

◆ OPTIGA_LIB_DEBUG_NULL_CHECK

#define OPTIGA_LIB_DEBUG_NULL_CHECK   (1U)

NULL parameter check. To disable the check, undefine the macro.

◆ OPTIGA_LIB_ENABLE_LOGGING

#define OPTIGA_LIB_ENABLE_LOGGING

Macro to enable logger
Enable macro OPTIGA_LIB_ENABLE_UTIL_LOGGING for Util Service layer logging
Enable macro OPTIGA_LIB_ENABLE_CRYPT_LOGGING for Crypt Service layer logging
Enable macro OPTIGA_LIB_ENABLE_CMD_LOGGING for Command layer logging
Enable macro OPTIGA_LIB_ENABLE_COMMS_LOGGING for Communication layer logging.

◆ OPTIGA_MAX_COMMS_BUFFER_SIZE

#define OPTIGA_MAX_COMMS_BUFFER_SIZE   (0x615)

Maximum buffer size required to communicate with OPTIGA.