diff options
Diffstat (limited to 'src/addr_list.h')
-rw-r--r-- | src/addr_list.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/addr_list.h b/src/addr_list.h new file mode 100644 index 0000000..66e217e --- /dev/null +++ b/src/addr_list.h | |||
@@ -0,0 +1,21 @@ | |||
1 | #ifndef G4U_ADDR_LIST_H | ||
2 | #define G4U_ADDR_LIST_H | ||
3 | |||
4 | #include <stdbool.h> | ||
5 | |||
6 | struct addr_list_node { | ||
7 | unsigned char value[6]; | ||
8 | struct addr_list_node* next; | ||
9 | }; | ||
10 | |||
11 | struct addr_list { | ||
12 | struct addr_list_node* top; | ||
13 | }; | ||
14 | |||
15 | void addr_list_init(struct addr_list* list); | ||
16 | void addr_list_add(struct addr_list* list, unsigned char addr[6]); | ||
17 | bool addr_list_contains(struct addr_list* list, unsigned char addr[6]); | ||
18 | void addr_list_remove(struct addr_list* list, unsigned char addr[6]); | ||
19 | void addr_list_free(struct addr_list* list); | ||
20 | |||
21 | #endif /* G4U_ADDR_LIST_H */ | ||