34 lines
1.1 KiB
C
34 lines
1.1 KiB
C
#ifndef __CAPWAP_LIST_HEADER__
|
|
#define __CAPWAP_LIST_HEADER__
|
|
|
|
/* Item */
|
|
struct capwap_list_item {
|
|
void* item;
|
|
int itemsize;
|
|
int autodelete;
|
|
struct capwap_list_item* next;
|
|
struct capwap_list_item* prev;
|
|
};
|
|
|
|
/* List */
|
|
struct capwap_list {
|
|
unsigned long count;
|
|
struct capwap_list_item* first;
|
|
struct capwap_list_item* last;
|
|
};
|
|
|
|
struct capwap_list* capwap_list_create(void);
|
|
void capwap_list_free(struct capwap_list* list);
|
|
void capwap_list_flush(struct capwap_list* list);
|
|
|
|
struct capwap_list_item* capwap_itemlist_create(int size);
|
|
struct capwap_list_item* capwap_itemlist_create_with_item(void* item, int size);
|
|
void capwap_itemlist_free(struct capwap_list_item* item);
|
|
|
|
struct capwap_list_item* capwap_itemlist_remove(struct capwap_list* list, struct capwap_list_item* item);
|
|
struct capwap_list_item* capwap_itemlist_remove_head(struct capwap_list* list);
|
|
void capwap_itemlist_insert_before(struct capwap_list* list, struct capwap_list_item* before, struct capwap_list_item* item);
|
|
void capwap_itemlist_insert_after(struct capwap_list* list, struct capwap_list_item* after, struct capwap_list_item* item);
|
|
|
|
#endif /* __CAPWAP_LIST_HEADER__ */
|