snmp_api.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. /********************************* (C) РОТЕК ***********************************
  2. * @module snmp_api
  3. * @file snmp_api.h
  4. * @version 1.0.0
  5. * @date XX.XX.XXXX
  6. * $brief snmp_api
  7. *******************************************************************************
  8. * @history Version Author Comment
  9. * XX.XX.XXXX 1.0.0 Telenkov D.A. First release.
  10. *******************************************************************************
  11. */
  12. /* Define to prevent recursive ----------------------------------------------*/
  13. #ifndef SNMP_API_H
  14. #define SNMP_API_H
  15. /**
  16. * @brief Инициализация параметров SNMP
  17. */
  18. void SNMP_Init(void);
  19. void SNMP_SysUpTimeTask(void *arg);
  20. /**
  21. * @brief Тестовый таск для проверки отправки трапов
  22. */
  23. void snmp_trap_tread(void *arg);
  24. /**
  25. * @brief Инициализация SNMP агента
  26. */
  27. void SNMP_AgentInit(void);
  28. /**
  29. * @brief Пользовательская функция для отправки трапа из массива traps[]
  30. * Трап помещается в очередь. Работа с очередью происходит по принципу
  31. * FIFO буфера.
  32. * Если в настройках трапа отправка отключена, то трап игнорируется.
  33. */
  34. void SNMP_SendUserTrap(uint8_t trapName);
  35. /**
  36. * @brief Установить SNMP Descriptor
  37. */
  38. void SNMP_SetObjDescr(void);
  39. /**
  40. * @brief Установить SNMP Community для чтения
  41. */
  42. void SNMP_SetReadCommunity(char *comm);
  43. /**
  44. * @brief Установить SNMP Community для записи
  45. */
  46. void SNMP_SetWriteCommunity(char *comm);
  47. /**
  48. * @brief Установить SNMP Community отправки трапов
  49. */
  50. void SNMP_SetTrapCommunity(char *comm);
  51. /**
  52. * @brief Установить SNMP SysContact
  53. */
  54. void SNMP_SetSysContact(char *con);
  55. /**
  56. * @brief Установить SNMP SysName
  57. */
  58. void SNMP_SetSysName(char *name);
  59. /**
  60. * @brief Установить SNMP SysLocation
  61. */
  62. void SNMP_SetSysLocation(char *loc);
  63. /**
  64. * @brief Установить SNMP SysManagerIP
  65. */
  66. void SNMP_SetManagerIP(char *ip);
  67. /**
  68. * @brief Установить SNMP Object ID
  69. */
  70. void SNMP_SetObjID(void);
  71. /**
  72. * @brief Вкл/выкл трапы
  73. */
  74. void SNMP_SetTrapOnOff(uint8_t state);
  75. /**
  76. * @brief Установить IP адрес для отправки трапов
  77. */
  78. void SNMP_SetTrapDestination(char *ip);
  79. /**
  80. * @brief Текущее TRAP community
  81. */
  82. void SNMP_GetTrapCommunity(char *str, uint8_t *len);
  83. /**
  84. * @brief Текущее community для чтения
  85. */
  86. void SNMP_GetReadCommunity(char *str, uint8_t *len);
  87. /**
  88. * @brief Текущее community для записи
  89. */
  90. void SNMP_GetWriteCommunity(char *str, uint8_t *len);
  91. /**
  92. * @brief IP SNMP менеджера
  93. */
  94. void SNMP_GetManagerIp(char *str, uint8_t *len);
  95. #endif /* #ifndef SNMP_API_H */
  96. /********************************* (C) РОТЕК **********************************/