23 #ifndef MBEDTLS_PLATFORM_UTIL_H
24 #define MBEDTLS_PLATFORM_UTIL_H
26 #if !defined(MBEDTLS_CONFIG_FILE)
29 #include MBEDTLS_CONFIG_FILE
33 #if defined(MBEDTLS_HAVE_TIME_DATE)
42 #if defined(MBEDTLS_CHECK_PARAMS)
44 #if defined(MBEDTLS_CHECK_PARAMS_ASSERT)
50 #if defined(MBEDTLS_PARAM_FAILED)
56 #define MBEDTLS_PARAM_FAILED_ALT
58 #elif defined(MBEDTLS_CHECK_PARAMS_ASSERT)
59 #define MBEDTLS_PARAM_FAILED( cond ) assert( cond )
60 #define MBEDTLS_PARAM_FAILED_ALT
63 #define MBEDTLS_PARAM_FAILED( cond ) \
64 mbedtls_param_failed( #cond, __FILE__, __LINE__ )
81 void mbedtls_param_failed(
const char *failure_condition,
87 #define MBEDTLS_INTERNAL_VALIDATE_RET( cond, ret ) \
91 MBEDTLS_PARAM_FAILED( cond ); \
97 #define MBEDTLS_INTERNAL_VALIDATE( cond ) \
101 MBEDTLS_PARAM_FAILED( cond ); \
109 #define MBEDTLS_INTERNAL_VALIDATE_RET( cond, ret ) do { } while( 0 )
110 #define MBEDTLS_INTERNAL_VALIDATE( cond ) do { } while( 0 )
115 #if !defined(MBEDTLS_DEPRECATED_REMOVED)
116 #if defined(MBEDTLS_DEPRECATED_WARNING)
121 #define MBEDTLS_DEPRECATED __attribute__((deprecated))
123 #define MBEDTLS_DEPRECATED_STRING_CONSTANT( VAL ) \
124 ( (mbedtls_deprecated_string_constant_t) ( VAL ) )
126 #define MBEDTLS_DEPRECATED_NUMERIC_CONSTANT( VAL ) \
127 ( (mbedtls_deprecated_numeric_constant_t) ( VAL ) )
128 #undef MBEDTLS_DEPRECATED
130 #define MBEDTLS_DEPRECATED_STRING_CONSTANT( VAL ) VAL
131 #define MBEDTLS_DEPRECATED_NUMERIC_CONSTANT( VAL ) VAL
142 #if !defined(MBEDTLS_CHECK_RETURN)
143 #if defined(__GNUC__)
144 #define MBEDTLS_CHECK_RETURN __attribute__((__warn_unused_result__))
145 #elif defined(_MSC_VER) && _MSC_VER >= 1700
147 #define MBEDTLS_CHECK_RETURN _Check_return_
149 #define MBEDTLS_CHECK_RETURN
169 #define MBEDTLS_CHECK_RETURN_CRITICAL MBEDTLS_CHECK_RETURN
188 #if defined(MBEDTLS_CHECK_RETURN_WARNING)
189 #define MBEDTLS_CHECK_RETURN_TYPICAL MBEDTLS_CHECK_RETURN
191 #define MBEDTLS_CHECK_RETURN_TYPICAL
205 #define MBEDTLS_CHECK_RETURN_OPTIONAL
212 #if !defined(MBEDTLS_IGNORE_RETURN)
221 #define MBEDTLS_IGNORE_RETURN(result) ( (void) !( result ) )
248 #if defined(MBEDTLS_HAVE_TIME_DATE)
Configuration options (set of defines)