MCUXpresso_MIMXRT1052xxxxB/middleware/aws_iot/device-defender/source/include/defender_config_defaults.h
Yilin Sun c2668b7ca0
Update SDK to v2.13.0
Signed-off-by: Yilin Sun <imi415@imi.moe>
2023-01-26 09:35:56 +08:00

182 lines
6.7 KiB
C

/*
* AWS IoT Device Defender Client v1.3.0
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* SPDX-License-Identifier: MIT
*
* 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.
*/
/**
* @file defender_config_defaults.h
* @brief Default config values for the AWS IoT Device Defender Client Library.
*/
#ifndef DEFENDER_CONFIG_DEFAULTS_H_
#define DEFENDER_CONFIG_DEFAULTS_H_
/* The macro definition for DEFENDER_DO_NOT_USE_CUSTOM_CONFIG is for Doxygen
* documentation only. */
/**
* @brief Define this macro to build the AWS IoT Device Defender Client Library
* without the custom config file defender_config.h.
*
* Without the custom config, the the AWS IoT Device Defender Client Library
* builds with default values of config macros defined in the
* defender_config_defaults.h file.
*
* If a custom config file is provided, then DEFENDER_DO_NOT_USE_CUSTOM_CONFIG
* must not be defined.
*
* <b>Default value</b>: DEFENDER_DO_NOT_USE_CUSTOM_CONFIG is <b>not</b> defined
* by default and the library expects a defender_config.h file.
*/
#ifdef DOXYGEN
#define DEFENDER_DO_NOT_USE_CUSTOM_CONFIG
#endif
/**
* @brief Set it to 1 to enable use of long key names in the defender report.
*
* AWS IoT Device Defender Service supports both long and short names for keys
* in the report sent by a device. For example,
*
* A device defender report using long key names:
* @code{c}
* {
* "header": {
* "report_id": 1530304554,
* "version": "1.0"
* },
* "metrics": {
* "network_stats": {
* "bytes_in": 29358693495,
* "bytes_out": 26485035,
* "packets_in": 10013573555,
* "packets_out": 11382615
* }
* }
* }
* @endcode
*
* An equivalent report using short key names:
* @code{c}
* {
* "hed": {
* "rid": 1530304554,
* "v": "1.0"
* },
* "met": {
* "ns": {
* "bi": 29358693495,
* "bo": 26485035,
* "pi": 10013573555,
* "po": 11382615
* }
* }
* }
* @endcode
*
* <b>Default value</b>: 0 as short key names are preferred option for resource
* constrained devices because they result in smaller report size. If you want
* to use long key names instead, set DEFENDER_USE_LONG_KEYS to 1 in the
* defender_config.h file.
*/
#ifndef DEFENDER_USE_LONG_KEYS
#define DEFENDER_USE_LONG_KEYS 0
#endif
/**
* @brief Macro used in the Device Defender client library to log error messages.
*
* To enable error logging, this macro should be mapped to an
* application-specific logging implementation.
*
* @note This logging macro is called in the Device Defender client library with
* parameters wrapped in double parentheses to be ISO C89/C90 standard
* compliant. For a reference POSIX implementation of the logging macros, refer
* to the defender_config.h file, and the logging-stack in demos folder of the
* [AWS IoT Embedded C SDK repository](https://github.com/aws/aws-iot-device-sdk-embedded-C).
*
* <b>Default value</b>: Error logs are turned off, and no code is generated
* for calls to the macro in the Device Defender client library on compilation.
*/
#ifndef LogError
#define LogError( message )
#endif
/**
* @brief Macro used in the Device Defender client library to log warning messages.
*
* To enable warning logging, this macro should be mapped to an
* application-specific logging implementation.
*
* @note This logging macro is called in the Device Defender client library with
* parameters wrapped in double parentheses to be ISO C89/C90 standard
* compliant. For a reference POSIX implementation of the logging macros, refer
* to the defender_config.h file, and the logging-stack in demos folder of the
* [AWS IoT Embedded C SDK repository](https://github.com/aws/aws-iot-device-sdk-embedded-C).
*
* <b>Default value</b>: Warning logs are turned off, and no code is generated
* for calls to the macro in the Device Defender client library on compilation.
*/
#ifndef LogWarn
#define LogWarn( message )
#endif
/**
* @brief Macro used in the Device Defender client library to log info messages.
*
* To enable info logging, this macro should be mapped to an
* application-specific logging implementation.
*
* @note This logging macro is called in the Device Defender client library with
* parameters wrapped in double parentheses to be ISO C89/C90 standard
* compliant. For a reference POSIX implementation of the logging macros, refer
* to the defender_config.h file, and the logging-stack in demos folder of the
* [AWS IoT Embedded C SDK repository](https://github.com/aws/aws-iot-device-sdk-embedded-C).
*
* <b>Default value</b>: Info logs are turned off, and no code is generated for
* calls to the macro in the Device Defender client library on compilation.
*/
#ifndef LogInfo
#define LogInfo( message )
#endif
/**
* @brief Macro used in the Device Defender client library to log debug messages.
*
* To enable debug logging, this macro should be mapped to an
* application-specific logging implementation.
*
* @note This logging macro is called in the Device Defender client library with
* parameters wrapped in double parentheses to be ISO C89/C90 standard
* compliant. For a reference POSIX implementation of the logging macros, refer
* to the defender_config.h file, and the logging-stack in demos folder of the
* [AWS IoT Embedded C SDK repository](https://github.com/aws/aws-iot-device-sdk-embedded-C).
*
* <b>Default value</b>: Debug logs are turned off, and no code is generated for
* calls to the macro in the Device Defender client library on compilation.
*/
#ifndef LogDebug
#define LogDebug( message )
#endif
#endif /* DEFENDER_CONFIG_DEFAULTS_H_ */