/* * Copyright 2007-2021 The OpenSSL Project Authors. All Rights Reserved. * Copyright Nokia 2007-2019 * Copyright Siemens AG 2015-2019 * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy * in the file LICENSE in the source distribution or at * https://www.openssl.org/source/license.html */ #ifndef OPENSSL_CMP_UTIL_H #define OPENSSL_CMP_UTIL_H #pragma once #include #ifndef OPENSSL_NO_CMP #include #include #ifdef __cplusplus extern "C" { #endif int OSSL_CMP_log_open(void); void OSSL_CMP_log_close(void); #define OSSL_CMP_LOG_PREFIX "CMP " /* * generalized logging/error callback mirroring the severity levels of syslog.h */ typedef int OSSL_CMP_severity; #define OSSL_CMP_LOG_EMERG 0 #define OSSL_CMP_LOG_ALERT 1 #define OSSL_CMP_LOG_CRIT 2 #define OSSL_CMP_LOG_ERR 3 #define OSSL_CMP_LOG_WARNING 4 #define OSSL_CMP_LOG_NOTICE 5 #define OSSL_CMP_LOG_INFO 6 #define OSSL_CMP_LOG_DEBUG 7 #define OSSL_CMP_LOG_TRACE 8 #define OSSL_CMP_LOG_MAX OSSL_CMP_LOG_TRACE typedef int (*OSSL_CMP_log_cb_t)(const char* func, const char* file, int line, OSSL_CMP_severity level, const char* msg); int OSSL_CMP_print_to_bio(BIO* bio, const char* component, const char* file, int line, OSSL_CMP_severity level, const char* msg); /* use of the logging callback for outputting error queue */ void OSSL_CMP_print_errors_cb(OSSL_CMP_log_cb_t log_fn); #ifdef __cplusplus } #endif #endif /* !defined(OPENSSL_NO_CMP) */ #endif /* !defined(OPENSSL_CMP_UTIL_H) */