Program Listing for File anj_config.h

Return to documentation for file (include_public/anj/anj_config.h)

#define ANJ_SOURCE_FILE_ID 201
#include <anj/log.h>
#define ANJ_LOG_LEVEL_FOR_MODULE_exchange L_TRACE

// Disable logs for observe module
#define ANJ_LOG_LEVEL_FOR_MODULE_observe L_MUTED
/*
 * Copyright 2023-2026 AVSystem <avsystem@avsystem.com>
 * AVSystem Anjay Lite LwM2M SDK
 * All rights reserved.
 *
 * Licensed under AVSystem Anjay Lite LwM2M Client SDK - Non-Commercial License.
 * See the attached LICENSE file for details.
 */

#ifndef ANJ_CONFIG_H
#define ANJ_CONFIG_H

/******************************************************************************\
 * Input/Output buffer sizes
\******************************************************************************/
#define ANJ_IN_MSG_BUFFER_SIZE 1200

#define ANJ_OUT_MSG_BUFFER_SIZE 1200

#define ANJ_OUT_PAYLOAD_BUFFER_SIZE 1024

/******************************************************************************\
 * Data Model configuration
\******************************************************************************/
#define ANJ_DM_MAX_OBJECTS_NUMBER 10

#define ANJ_WITH_COMPOSITE_OPERATIONS

#define ANJ_DM_MAX_COMP_READ_ENTRIES 5

/******************************************************************************\
 * Device Object configuration
\******************************************************************************/
#define ANJ_WITH_DEFAULT_DEVICE_OBJ

/******************************************************************************\
 * Security Object configuration
\******************************************************************************/
#define ANJ_WITH_DEFAULT_SECURITY_OBJ

#define ANJ_SEC_OBJ_MAX_PUBLIC_KEY_OR_IDENTITY_SIZE 255

#define ANJ_SEC_OBJ_MAX_SERVER_PUBLIC_KEY_SIZE 255

#define ANJ_SEC_OBJ_MAX_SECRET_KEY_SIZE 255

/******************************************************************************\
 * Server Object configuration
\******************************************************************************/
#define ANJ_WITH_DEFAULT_SERVER_OBJ

/******************************************************************************\
 * FOTA Object configuration
\******************************************************************************/
#define ANJ_WITH_DEFAULT_FOTA_OBJ

#define ANJ_FOTA_WITH_PULL_METHOD

#define ANJ_FOTA_WITH_PUSH_METHOD

#define ANJ_FOTA_WITH_COAP

#define ANJ_FOTA_WITH_COAPS

#define ANJ_FOTA_WITH_HTTP

#define ANJ_FOTA_WITH_HTTPS

#define ANJ_FOTA_WITH_COAP_TCP

#define ANJ_FOTA_WITH_COAPS_TCP

/******************************************************************************\
 * CoAP Downloader configuration
\******************************************************************************/
#define ANJ_WITH_COAP_DOWNLOADER

#define ANJ_COAP_DOWNLOADER_MAX_PATHS_NUMBER 3

#define ANJ_COAP_DOWNLOADER_MAX_MSG_SIZE 1200

/******************************************************************************\
 * NTP module configuration
\******************************************************************************/

#define ANJ_WITH_NTP

#define ANJ_NTP_SERVER_ADDR_MAX_LEN 25

/******************************************************************************\
 * Observe configuration
\******************************************************************************/
#define ANJ_WITH_OBSERVE

#define ANJ_WITH_OBSERVE_COMPOSITE

#define ANJ_OBSERVE_MAX_OBSERVATIONS_NUMBER 10

#define ANJ_OBSERVE_MAX_WRITE_ATTRIBUTES_NUMBER 10

#define ANJ_OBSERVE_OBSERVATION_CANCEL_ON_TIMEOUT

#define ANJ_WITH_RST_AS_CANCEL_OBSERVE

/******************************************************************************\
 * Bootstrap configuration
\******************************************************************************/
#define ANJ_WITH_BOOTSTRAP

#define ANJ_WITH_BOOTSTRAP_DISCOVER

/******************************************************************************\
 * Discover configuration
\******************************************************************************/
#define ANJ_WITH_DISCOVER

#define ANJ_WITH_DISCOVER_ATTR

/******************************************************************************\
 * Send configuration
\******************************************************************************/
#define ANJ_WITH_LWM2M_SEND

#define ANJ_LWM2M_SEND_QUEUE_SIZE 1

/******************************************************************************\
 * Compat layer configuration
\******************************************************************************/
#define ANJ_WITH_TIME_POSIX_COMPAT

#define ANJ_WITH_RNG_POSIX_COMPAT

#define ANJ_WITH_SOCKET_POSIX_COMPAT

#define ANJ_WITH_CRYPTO_STORAGE_DEFAULT

#define ANJ_NET_WITH_IPV4

#define ANJ_NET_WITH_IPV6

#define ANJ_NET_WITH_UDP

#define ANJ_NET_WITH_DTLS

#define ANJ_WITH_MBEDTLS

#define ANJ_MBEDTLS_PSK_IDENTITY_MAX_LEN 128

#define ANJ_MBEDTLS_TLS_VERSION MBEDTLS_SSL_VERSION_TLS1_2

#define ANJ_MBEDTLS_ALLOWED_CIPHERSUITES MBEDTLS_TLS_PSK_WITH_AES_128_CCM_8,MBEDTLS_TLS_PSK_WITH_AES_256_CCM_8

#define ANJ_MBEDTLS_HS_INITIAL_TIMEOUT_VALUE_MS 1000

#define ANJ_MBEDTLS_HS_MAXIMUM_TIMEOUT_VALUE_MS 60000

/******************************************************************************\
 * Security configuration
\******************************************************************************/
#define ANJ_WITH_SECURITY

#define ANJ_WITH_CERTIFICATES

#define ANJ_WITH_EXTERNAL_CRYPTO_STORAGE

/******************************************************************************\
 * Data Formats configuration
\******************************************************************************/
#define ANJ_WITH_EXTERNAL_DATA

#define ANJ_WITH_CBOR

#define ANJ_WITH_CBOR_DECODE_DECIMAL_FRACTIONS

#define ANJ_WITH_CBOR_DECODE_HALF_FLOAT

#define ANJ_WITH_CBOR_DECODE_INDEFINITE_BYTES

#define ANJ_WITH_CBOR_DECODE_STRING_TIME

#define ANJ_WITH_LWM2M_CBOR

#define ANJ_WITH_SENML_CBOR

#define ANJ_WITH_PLAINTEXT

#define ANJ_WITH_OPAQUE

#define ANJ_WITH_TLV

/******************************************************************************\
 * CoAP configuration
\******************************************************************************/
#define ANJ_COAP_MAX_OPTIONS_NUMBER 15

#define ANJ_COAP_MAX_ATTR_OPTION_SIZE 40

#define ANJ_COAP_MAX_LOCATION_PATHS_NUMBER 2

#define ANJ_COAP_MAX_LOCATION_PATH_SIZE 40

#define ANJ_WITH_CACHE

#define ANJ_CACHE_ENTRIES_NUMBER 10

/******************************************************************************\
 * Logger configuration
\******************************************************************************/
#define ANJ_LOG_FULL

#define ANJ_LOG_MICRO

#define ANJ_LOG_ALT_IMPL_HEADER

#define ANJ_LOG_FORMATTER_PRINTF

#define ANJ_LOG_FORMATTER_BUF_SIZE 512

#define ANJ_LOG_HANDLER_OUTPUT_STDERR

#define ANJ_LOG_HANDLER_OUTPUT_ALT

#define ANJ_LOG_STRIP_CONSTANTS

#define ANJ_LOG_LEVEL_DEFAULT L_INFO

#define ANJ_LOG_FILTERING_CONFIG_HEADER

/******************************************************************************\
 * Persistence configuration
\******************************************************************************/
#define ANJ_WITH_PERSISTENCE

/******************************************************************************\
 * Other configuration
\******************************************************************************/
#define ANJ_WITH_LWM2M12

#define ANJ_WITH_CUSTOM_CONVERSION_FUNCTIONS

#define ANJ_PLATFORM_BIG_ENDIAN

#endif // ANJ_CONFIG_H