return !memcmp(exe, proc_exe_buf, exe_len);
}
+
+static const char * const uci_validate_name[__BLOBMSG_TYPE_LAST] = {
+ [BLOBMSG_TYPE_STRING] = "string",
+ [BLOBMSG_TYPE_ARRAY] = "list(string)",
+ [BLOBMSG_TYPE_INT32] = "uinteger",
+ [BLOBMSG_TYPE_BOOL] = "bool",
+};
+
+const char*
+uci_get_validate_string(const struct uci_blob_param_list *p, int i)
+{
+ if (p->validate[i])
+ return p->validate[i];
+
+ else if (uci_validate_name[p->params[i].type])
+ return uci_validate_name[p->params[i].type];
+
+ return p->validate[BLOBMSG_TYPE_STRING];
+}
#include <unistd.h>
#include <stdio.h>
+#include <uci_blob.h>
#include <libubox/list.h>
#include <libubox/avl.h>
#include <libubox/avl-cmp.h>
uint32_t crc32_file(FILE *fp);
+const char * uci_get_validate_string(const struct uci_blob_param_list *c, int i);
+
#ifdef __APPLE__
#define s6_addr32 __u6_addr.__u6_addr32
#endif