11#ifndef MBEDTLS_PLATFORM_UTIL_H
12#define MBEDTLS_PLATFORM_UTIL_H
14#if !defined(MBEDTLS_CONFIG_FILE)
17#include MBEDTLS_CONFIG_FILE
21#if defined(MBEDTLS_HAVE_TIME_DATE)
30#if defined(MBEDTLS_CHECK_PARAMS)
32#if defined(MBEDTLS_CHECK_PARAMS_ASSERT)
38#if defined(MBEDTLS_PARAM_FAILED)
44#define MBEDTLS_PARAM_FAILED_ALT
46#elif defined(MBEDTLS_CHECK_PARAMS_ASSERT)
47#define MBEDTLS_PARAM_FAILED(cond) assert(cond)
48#define MBEDTLS_PARAM_FAILED_ALT
51#define MBEDTLS_PARAM_FAILED(cond) \
52 mbedtls_param_failed( #cond, __FILE__, __LINE__)
69void mbedtls_param_failed(
const char *failure_condition,
75#define MBEDTLS_INTERNAL_VALIDATE_RET(cond, ret) \
79 MBEDTLS_PARAM_FAILED(cond); \
85#define MBEDTLS_INTERNAL_VALIDATE(cond) \
89 MBEDTLS_PARAM_FAILED(cond); \
97#define MBEDTLS_INTERNAL_VALIDATE_RET(cond, ret) do { } while (0)
98#define MBEDTLS_INTERNAL_VALIDATE(cond) do { } while (0)
103#if !defined(MBEDTLS_DEPRECATED_REMOVED)
104#if defined(MBEDTLS_DEPRECATED_WARNING)
109#define MBEDTLS_DEPRECATED __attribute__((deprecated))
111#define MBEDTLS_DEPRECATED_STRING_CONSTANT(VAL) \
112 ((mbedtls_deprecated_string_constant_t) (VAL))
114#define MBEDTLS_DEPRECATED_NUMERIC_CONSTANT(VAL) \
115 ((mbedtls_deprecated_numeric_constant_t) (VAL))
116#undef MBEDTLS_DEPRECATED
118#define MBEDTLS_DEPRECATED_STRING_CONSTANT(VAL) VAL
119#define MBEDTLS_DEPRECATED_NUMERIC_CONSTANT(VAL) VAL
130#if !defined(MBEDTLS_CHECK_RETURN)
132#define MBEDTLS_CHECK_RETURN __attribute__((__warn_unused_result__))
133#elif defined(_MSC_VER) && _MSC_VER >= 1700
135#define MBEDTLS_CHECK_RETURN _Check_return_
137#define MBEDTLS_CHECK_RETURN
157#define MBEDTLS_CHECK_RETURN_CRITICAL MBEDTLS_CHECK_RETURN
176#if defined(MBEDTLS_CHECK_RETURN_WARNING)
177#define MBEDTLS_CHECK_RETURN_TYPICAL MBEDTLS_CHECK_RETURN
179#define MBEDTLS_CHECK_RETURN_TYPICAL
193#define MBEDTLS_CHECK_RETURN_OPTIONAL
200#if !defined(MBEDTLS_IGNORE_RETURN)
209#define MBEDTLS_IGNORE_RETURN(result) ((void) !(result))
216#if !defined(MBEDTLS_TEST_DEFINES_ZEROIZE)
239void mbedtls_platform_zeroize(void *buf, size_t len);
242#if defined(MBEDTLS_HAVE_TIME_DATE)
#define MBEDTLS_DEPRECATED
Configuration options (set of defines)