|
hsw-nbt 1.2.0
OPTIGA Authenticate NBT Host Library for C
|
Generic Logger object used to decapsulate concrete implementation from interface. More...
#include <infineon/ifx-logger.h>
Data Fields | |
| ifx_logger_log_callback_t | _log |
| Private logging function for concrete implementation. | |
| ifx_logger_set_level_callback_t | _set_level |
| Private function to set log level. | |
| ifx_logger_destroy_callback_t | _destructor |
| Private destructor if further cleanup is necessary. | |
| ifx_log_level | _level |
| Private member for minimum log level used for filtering messages. | |
| void * | _data |
Private member for generic logger data as void*. | |
Related Symbols | |
(Note that these are not member symbols.) | |
| ifx_status_t | ifx_apdu_protocol_log (const ifx_logger_t *logger, const char *source, ifx_log_level level, const char *msg, const ifx_apdu_t *apdu) |
| Extension of ifx_logger_log() for logging APDU objects. | |
| ifx_status_t | ifx_apdu_protocol_log_response (const ifx_logger_t *logger, const char *source, ifx_log_level level, const char *msg, const ifx_apdu_response_t *response) |
| Extension of ifx_logger_log() for logging APDU response objects. | |
| ifx_status_t | ifx_logger_initialize (ifx_logger_t *self) |
| Initializes Logger object by setting all members to valid (but potentially unusable) values. | |
| ifx_status_t | ifx_logger_log (const ifx_logger_t *self, const char *source, ifx_log_level level, const char *formatter,...) |
| Log formatted message. | |
| ifx_status_t | ifx_logger_log_bytes (const ifx_logger_t *self, const char *source, ifx_log_level level, const char *msg, const uint8_t *data, size_t data_len, const char *delimiter) |
| Extension of ifx_logger_log() for logging byte arrays. | |
| ifx_status_t | ifx_logger_set_level (ifx_logger_t *self, ifx_log_level level) |
All messages with level lower than level shall be discarded by the logger. | |
| void | ifx_logger_destroy (ifx_logger_t *self) |
| Frees memory associated with Logger object (but not object itself). | |
| void | ifx_logger_set_default (ifx_logger_t *logger) |
| Sets default Logger to be used. | |
Generic Logger object used to decapsulate concrete implementation from interface.
Definition at line 248 of file ifx-logger.h.
|
related |
Extension of ifx_logger_log() for logging APDU objects.
| [in] | logger | Logger object holding concrete implementation. |
| [in] | source | String with information where the log originated from. |
| [in] | level | ifx_log_level of message (used for filtering). |
| [in] | msg | Optional message to be prepended to APDU (might be NULL ). |
| [in] | apdu | APDU to be logged. |
IFX_SUCCESS if successful, any other value in case of error.
|
related |
Extension of ifx_logger_log() for logging APDU response objects.
| [in] | logger | Logger object holding concrete implementation. |
| [in] | source | String with information where the log originated from. |
| [in] | level | ifx_log_level of message (used for filtering). |
| [in] | msg | Optional message to be prepended to APDU response (might be NULL ). |
| [in] | response | ifx_apdu_response_t to be logged. |
IFX_SUCCESS if successful, any other value in case of error.
|
related |
Frees memory associated with Logger object (but not object itself).
Logger objects might contain data that needs to be released (e.g. open file handles). Users would need to know the concrete type based on the used implementation. This would negate all benefits of having a generic interface. Calling this function will ensure that all dynamically allocated members have been freed.
| [in] | self | Logger object whose data shall be freed. |
|
related |
Initializes Logger object by setting all members to valid (but potentially unusable) values.
Concrete implementations can call this function to ensure all members are set to their correct default values before populating the required fields.
| [in] | self | Logger object to be initialized. |
IFX_SUCCESS if successful, any other value in case of error.
|
related |
Log formatted message.
Uses printf syntax for message formatting.
| [in] | self | Logger object holding concrete implementation. Use ifx_logger_default to use default logger set via ifx_logger_set_default(). |
| [in] | source | String with information where the log originated from. |
| [in] | level | ifx_log_level of message (used for filtering). |
| [in] | formatter | Format string (printf syntax). |
| [in] | ... | String format arguments (printf syntax). |
IFX_SUCCESS if successful, any other value in case of error.
|
related |
Extension of ifx_logger_log() for logging byte arrays.
| [in] | self | Logger object holding concrete implementation. Use ifx_logger_default to use default logger set via ifx_logger_set_default(). |
| [in] | source | String with information where the log originated from. |
| [in] | level | ifx_log_level of message (used for filtering). |
| [in] | msg | Optional message to be prepended to byte array (might be NULL). |
| [in] | data | Data to be logged. |
| [in] | data_len | Number of bytes in data. |
| [in] | delimiter | Delimiter to be used between bytes (might be NULL for empty string). |
IFX_SUCCESS if successful, any other value in case of error.
|
related |
Sets default Logger to be used.
Libraries that cannot keep track of the desired logger themselves can call ifx_logger_log() (or any variation thereof) with the logger parameter set to ifx_logger_default to use the Logger given to this function.
| [in] | logger | Default logger instance to be used. |
|
related |
All messages with level lower than level shall be discarded by the logger.
| [in] | self | Logger object to set log level for. |
| [in] | level | Minimum log level of interest. |
IFX_SUCCESS if successful, any other value in case of error. | void* ifx_logger_t::_data |
Private member for generic logger data as void*.
Only used internally, do NOT set manually. Might be NULL.
Definition at line 292 of file ifx-logger.h.
| ifx_logger_destroy_callback_t ifx_logger_t::_destructor |
Private destructor if further cleanup is necessary.
Set by implementation's initialization function, do NOT set manually. ifx_logger_destroy(ifx_logger_t*) will call free() for Logger._data . If any further cleanup is necessary implement it in this function. Otherwise use NULL.
Definition at line 277 of file ifx-logger.h.
| ifx_log_level ifx_logger_t::_level |
Private member for minimum log level used for filtering messages.
Set by ifx_logger_set_level(ifx_logger_t*, ifx_log_level), do NOT set manually.
Definition at line 285 of file ifx-logger.h.
| ifx_logger_log_callback_t ifx_logger_t::_log |
Private logging function for concrete implementation.
Set by implementation's initialization function, do NOT set manually!
Definition at line 256 of file ifx-logger.h.
| ifx_logger_set_level_callback_t ifx_logger_t::_set_level |
Private function to set log level.
Set by implementation's initialization function, do NOT set manually. By default ifx_logger_set_level() will simply update Logger._level. If further logic is required implementations can set this function to a more complex setter. If no custom setter is required use NULL.
Definition at line 267 of file ifx-logger.h.