/********************************* (C) РОТЕК *********************************** * @module trap_api * @file trap_api.h * @version 1.0.0 * @date XX.XX.XXXX * $brief trap_api ******************************************************************************* * @history Version Author Comment * XX.XX.XXXX 1.0.0 Telenkov D.A. First release. ******************************************************************************* */ /* Define to prevent recursive ----------------------------------------------*/ #ifndef TRAP_API_H #define TRAP_API_H #include #include "common_config.h" typedef enum { SIMPLE_TRAP = 0, VARBIND_TRAP, } TRAP_TYPE_t; /** * @brief */ typedef struct { TRAP_LIST_t listName; uint8_t trapId; // ID в ветке traps uint8_t varbindId; // ID присоединенной переменной bool trapEnable; // false - отправка трапа не разрешена, true - отправка разрешена void (*handle)(char*, uint8_t*); } TRAP_t; /** * @brief Отправка обычного трапа с сообщением, зарегистрированного в базе. */ bool SNMP_SendMessageTrap(TRAP_t trap, char* msg, uint8_t len); /** * @brief Отправка трапа с переменной, зарегистрированного в базе. * @retval */ bool SNMP_SendVarbindTrap(TRAP_t *trap); /** * @brief Инициализация базы трапов */ void SNMP_InitTrapsBase(void); /** * @brief Отправка трапа, зарегистрированного в базе */ bool SNMP_SendTrap(TRAP_t trap); #endif /* #ifndef TRAP_API_H */ /********************************* (C) РОТЕК **********************************/