summaryrefslogtreecommitdiff
path: root/src/list.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/list.h')
-rw-r--r--src/list.h28
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 */