diff options
author | Andris Zeila <andris.zeila@zabbix.com> | 2021-02-28 13:42:20 +0300 |
---|---|---|
committer | Andris Zeila <andris.zeila@zabbix.com> | 2021-02-28 13:45:30 +0300 |
commit | 5682ceb24cfa643cb512dbed39dc8dac72507497 (patch) | |
tree | 5f1fa96955a6d3e9e02e8456216de8cb1e95a4e8 /include/zbxalgo.h | |
parent | f79e31c4e9697fe065a700e7aec7bc863e8a2449 (diff) |
........S. [ZBXNEXT-6478] added test report sending through alerting services
Diffstat (limited to 'include/zbxalgo.h')
-rw-r--r-- | include/zbxalgo.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/include/zbxalgo.h b/include/zbxalgo.h index 4e016a9171c..885b94dbdfd 100644 --- a/include/zbxalgo.h +++ b/include/zbxalgo.h @@ -413,6 +413,44 @@ void zbx_queue_ptr_push(zbx_queue_ptr_t *queue, void *value); void *zbx_queue_ptr_pop(zbx_queue_ptr_t *queue); void zbx_queue_ptr_remove_value(zbx_queue_ptr_t *queue, const void *value); +/* list item data */ +typedef struct list_item +{ + struct list_item *next; + void *data; +} +zbx_list_item_t; +/* list data */ +typedef struct +{ + zbx_list_item_t *head; + zbx_list_item_t *tail; +} +zbx_list_t; + +/* queue item data */ +typedef struct +{ + zbx_list_t *list; + zbx_list_item_t *current; + zbx_list_item_t *next; +} +zbx_list_iterator_t; + +void zbx_list_create(zbx_list_t *queue); +void zbx_list_destroy(zbx_list_t *list); +void zbx_list_append(zbx_list_t *list, void *value, zbx_list_item_t **inserted); +void zbx_list_insert_after(zbx_list_t *list, zbx_list_item_t *after, void *value, zbx_list_item_t **inserted); +void zbx_list_prepend(zbx_list_t *list, void *value, zbx_list_item_t **inserted); +int zbx_list_pop(zbx_list_t *list, void **value); +int zbx_list_peek(const zbx_list_t *list, void **value); +void zbx_list_iterator_init(zbx_list_t *list, zbx_list_iterator_t *iterator); +int zbx_list_iterator_next(zbx_list_iterator_t *iterator); +int zbx_list_iterator_peek(const zbx_list_iterator_t *iterator, void **value); +void zbx_list_iterator_clear(zbx_list_iterator_t *iterator); +int zbx_list_iterator_equal(const zbx_list_iterator_t *iterator1, const zbx_list_iterator_t *iterator2); +int zbx_list_iterator_isset(const zbx_list_iterator_t *iterator); +void zbx_list_iterator_update(zbx_list_iterator_t *iterator); #endif |