diff options
Diffstat (limited to 'src/list.h')
-rw-r--r-- | src/list.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/list.h b/src/list.h new file mode 100644 index 0000000..2b5cc07 --- /dev/null +++ b/src/list.h @@ -0,0 +1,28 @@ +#ifndef DROPBEAR_DROPBEAR_LIST_H +#define DROPBEAR_DROPBEAR_LIST_H + +struct _m_list; + +struct _m_list_elem { + void *item; + struct _m_list_elem *next; + struct _m_list_elem *prev; + struct _m_list *list; +}; + +typedef struct _m_list_elem m_list_elem; + +struct _m_list { + m_list_elem *first; + m_list_elem *last; +}; + +typedef struct _m_list m_list; + +m_list * list_new(void); +void list_append(m_list *list, void *item); +/* returns the item for the element removed */ +void * list_remove(m_list_elem *elem); + + +#endif /* DROPBEAR_DROPBEAR_LIST_H */ |