diff options
author | Felix Fietkau <nbd@openwrt.org> | 2012-06-10 16:47:16 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2012-06-10 16:47:16 +0200 |
commit | adcfdfd838f54f15ec7f4be6b5e8e5b78ddd3393 (patch) | |
tree | d601809b0d0ab9992d29631ed4817626caefcf4e /utils.h | |
parent | 84c2e44d4c1ae46418cc8f7891b31e9df4131d96 (diff) | |
download | unitd-adcfdfd838f54f15ec7f4be6b5e8e5b78ddd3393.tar unitd-adcfdfd838f54f15ec7f4be6b5e8e5b78ddd3393.zip |
add blobmsg list helpers
Diffstat (limited to 'utils.h')
-rw-r--r-- | utils.h | 26 |
1 files changed, 26 insertions, 0 deletions
@@ -0,0 +1,26 @@ +#ifndef __PROCD_UTILS_H +#define __PROCD_UTILS_H + +#include <libubox/avl.h> +#include <libubox/blob.h> +#include <libubox/blobmsg.h> + +struct blobmsg_list { + struct avl_tree avl; + int node_offset; + int node_len; +}; + +struct blobmsg_list_node { + struct avl_node avl; + struct blob_attr *data; +}; + +#define blobmsg_list_init(list, type, field) \ + __blobmsg_list_init(tree, offsetof(type, field), sizeof(type)) + +void __blobmsg_list_init(struct blobmsg_list *list, int offset, int len); +int blobmsg_list_fill(struct blobmsg_list *list, void *data, int len); +void blobmsg_list_free(struct blobmsg_list *list); + +#endif |