#include "alerter_defs.h"
#include "alerter_protocol.h"
#include "zbxipcservice.h"
#include "zbxserialize.h"
ZBX_PTR_VECTOR_IMPL(am_mediatype_ptr, zbx_am_mediatype_t *)
ZBX_PTR_VECTOR_IMPL(am_media_ptr, zbx_am_media_t *)
ZBX_PTR_VECTOR_IMPL(am_db_mediatype_ptr, zbx_am_db_mediatype_t *)
ZBX_PTR_VECTOR_IMPL(am_db_alert_ptr, zbx_am_db_alert_t *)
ZBX_PTR_VECTOR_IMPL(am_result_ptr, zbx_am_result_t *)
void zbx_am_db_mediatype_clear(zbx_am_db_mediatype_t *mediatype)
zbx_free(mediatype->smtp_server);
zbx_free(mediatype->smtp_helo);
zbx_free(mediatype->smtp_email);
zbx_free(mediatype->exec_path);
zbx_free(mediatype->gsm_modem);
zbx_free(mediatype->username);
zbx_free(mediatype->passwd);
zbx_free(mediatype->script);
zbx_free(mediatype->attempt_interval);
zbx_free(mediatype->timeout);
void zbx_am_db_alert_free(zbx_am_db_alert_t *alert)
zbx_free(alert->subject);
zbx_free(alert->message);
zbx_free(alert->expression);
zbx_free(alert->recovery_expression);
void zbx_am_media_clear(zbx_am_media_t *media)
void zbx_am_media_free(zbx_am_media_t *media)
zbx_am_media_clear(media);
zbx_uint32_t zbx_alerter_serialize_result(unsigned char **data, const char *value, int errcode, const char *error,
zbx_uint32_t data_len = 0, value_len, error_len, debug_len;
zbx_serialize_prepare_str(data_len, value);
zbx_serialize_prepare_value(data_len, errcode);
zbx_serialize_prepare_str(data_len, error);
zbx_serialize_prepare_str(data_len, debug);
*data = (unsigned char *)zbx_malloc(NULL, data_len);
ptr += zbx_serialize_str(ptr, value, value_len);
ptr += zbx_serialize_value(ptr, errcode);
ptr += zbx_serialize_str(ptr, error, error_len);
(void)zbx_serialize_str(ptr, debug, debug_len);