_list
addr_match_cidr_list(const char *addr, const char *_list)
if ((o = list = strdup(_list)) == NULL)
addr_match_list(const char *addr, const char *_list)
if ((o = list = strdup(_list)) == NULL)
void properties_free(properties _list);
char *property_find(properties _list, const char *_name);
if (TAILQ_EMPTY(&hio_##name##_list[(ncomp)])) \
TAILQ_INSERT_TAIL(&hio_##name##_list[(ncomp)], (hio), \
if (TAILQ_EMPTY(&hio_##name##_list)) \
TAILQ_INSERT_TAIL(&hio_##name##_list, (hio), hio_##name##_next);\
while (((hio) = TAILQ_FIRST(&hio_##name##_list[(ncomp)])) == NULL && !_last) { \
TAILQ_REMOVE(&hio_##name##_list[(ncomp)], (hio), \
while (((hio) = TAILQ_FIRST(&hio_##name##_list)) == NULL) { \
TAILQ_REMOVE(&hio_##name##_list, (hio), hio_##name##_next); \
if (TAILQ_EMPTY(&hio_##name##_list)) \
TAILQ_INSERT_TAIL(&hio_##name##_list, (hio), hio_next); \
while (((hio) = TAILQ_FIRST(&hio_##name##_list)) == NULL) { \
TAILQ_REMOVE(&hio_##name##_list, (hio), hio_next); \
#define netdev_hw_addr_list_for_each(_addr, _list) \
list_for_each_entry((_addr), &(_list)->addr_list, addr_list)
#define ECORE_LIST_INIT(_list) \
(_list)->head = NULL; \
(_list)->tail = NULL; \
(_list)->cnt = 0; \
#define ECORE_LIST_IS_LAST(_elem, _list) \
(_elem == (_list)->tail)
#define ECORE_LIST_IS_EMPTY(_list) \
((_list)->cnt == 0)
#define ECORE_LIST_FIRST_ENTRY(_list, cast, _link) \
(cast *)((_list)->head)
#define ECORE_LIST_PUSH_HEAD(_elem, _list) \
(_elem)->next = (_list)->head; \
if ((_list)->tail == (ecore_list_entry_t *)0) { \
(_list)->tail = (_elem); \
(_list)->head->prev = (_elem); \
(_list)->head = (_elem); \
(_list)->cnt++; \
#define ECORE_LIST_PUSH_TAIL(_elem, _list) \
(_elem)->prev = (_list)->tail; \
if ((_list)->tail) { \
(_list)->tail->next = (_elem); \
(_list)->head = (_elem); \
(_list)->tail = (_elem); \
(_list)->cnt++; \
#define ECORE_LIST_REMOVE_ENTRY(_elem, _list) \
if ((_list)->head == (_elem)) { \
if ((_list)->head) { \
(_list)->head = (_list)->head->next; \
if ((_list)->head) { \
(_list)->head->prev = (ecore_list_entry_t *)0; \
(_list)->tail = (ecore_list_entry_t *)0; \
(_list)->cnt--; \
} else if ((_list)->tail == (_elem)) { \
if ((_list)->tail) { \
(_list)->tail = (_list)->tail->prev; \
if ((_list)->tail) { \
(_list)->tail->next = (ecore_list_entry_t *)0; \
(_list)->head = (ecore_list_entry_t *)0; \
(_list)->cnt--; \
(_list)->cnt--; \
#define ECORE_LIST_FOR_EACH_ENTRY(pos, _list, _link, cast) \
for (pos = ECORE_LIST_FIRST_ENTRY(_list, cast, _link); \
#define ECORE_LIST_FOR_EACH_ENTRY_SAFE(pos, n, _list, _link, cast) \
for (pos = ECORE_LIST_FIRST_ENTRY(_list, cast, _lint), \
STAILQ_ENTRY(_list) entries;
static STAILQ_HEAD(head, _list) lh;