Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.openwrt.org/project/libubox.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-07-15 12:51:09 +0400
committerFelix Fietkau <nbd@openwrt.org>2014-07-15 12:52:12 +0400
commit7ba1f8acd8afb451a05276eda5d3567a53ef2fb3 (patch)
treed521829c62c0db825ba6c5f498628e991d6157f1 /blobmsg.h
parentfd5b522ce6af8584a9c9259700b8916f06f85766 (diff)
blobmsg: add blobmsg_check_array, which returns the size of the array
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Diffstat (limited to 'blobmsg.h')
-rw-r--r--blobmsg.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/blobmsg.h b/blobmsg.h
index d8f1045..082980a 100644
--- a/blobmsg.h
+++ b/blobmsg.h
@@ -90,6 +90,15 @@ static inline int blobmsg_len(const struct blob_attr *attr)
bool blobmsg_check_attr(const struct blob_attr *attr, bool name);
bool blobmsg_check_attr_list(const struct blob_attr *attr, int type);
+
+/*
+ * blobmsg_check_array: validate array/table and return size
+ *
+ * Checks if all elements of an array or table are valid and have
+ * the specified type. Returns the number of elements in the array
+ */
+int blobmsg_check_array(const struct blob_attr *attr, int type);
+
int blobmsg_parse(const struct blobmsg_policy *policy, int policy_len,
struct blob_attr **tb, void *data, unsigned int len);
int blobmsg_parse_array(const struct blobmsg_policy *policy, int policy_len,