diff options
author | John Crispin <blogic@openwrt.org> | 2014-02-17 12:12:21 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2014-02-17 15:10:11 +0100 |
commit | 8663e9de716248bf72832aee70090f574b3ff5d2 (patch) | |
tree | 5748f5a4741d5922c3e8eeca4824f91c0540cc79 /utils.c | |
parent | e3dc49a34fdd0dd900271cdfe6bb1c05babe5ee6 (diff) |
add a helper to convert blobmsg types to luci validate rules
Signed-off-by: John Crispin <blogic@openwrt.org>
Diffstat (limited to 'utils.c')
-rw-r--r-- | utils.c | 19 |
1 files changed, 19 insertions, 0 deletions
@@ -195,3 +195,22 @@ bool check_pid_path(int pid, const char *exe) 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]; +} |