*str += strlen(*str) + 1;
type = next_arg(ctx, str, true, false);
- if (!uci_validate_str(type, false))
+ if (!uci_validate_type(type))
uci_parse_error(ctx, type, "invalid character in field");
name = next_arg(ctx, str, false, true);
assert_eol(ctx, str);
* NB: the config file can still override the package name
*/
if (name) {
- UCI_ASSERT(ctx, uci_validate_str(name, false));
+ UCI_ASSERT(ctx, uci_validate_package(name));
pctx->name = name;
}
{
char *filename;
- UCI_ASSERT(ctx, uci_validate_str(name, false));
+ UCI_ASSERT(ctx, uci_validate_package(name));
filename = uci_malloc(ctx, strlen(name) + strlen(ctx->confdir) + 2);
sprintf(filename, "%s/%s", ctx->confdir, name);
if (!p)
continue;
- if (!uci_validate_name(p))
+ if (!uci_validate_package(p))
continue;
configs[i] = buf;
if (!*name)
name = NULL;
- else if (!uci_validate_str(name, false))
+ else if (!uci_validate_type(name))
goto error;
/* if the given index is negative, it specifies the section number from
UCI_ASSERT(ctx, ptr->value);
UCI_ASSERT(ctx, ptr->s || (!ptr->option && ptr->section));
if (!ptr->option) {
- UCI_ASSERT(ctx, uci_validate_str(ptr->value, false));
+ UCI_ASSERT(ctx, uci_validate_type(ptr->value));
}
if (!ptr->o && ptr->s && ptr->option) {
return true;
}
+static inline bool uci_validate_package(const char *str)
+{
+ return uci_validate_str(str, false);
+}
+
+static inline bool uci_validate_type(const char *str)
+{
+ return uci_validate_str(str, false);
+}
+
static inline bool uci_validate_name(const char *str)
{
return uci_validate_str(str, true);
goto error;
lastval:
- if (ptr->package && !uci_validate_str(ptr->package, false))
+ if (ptr->package && !uci_validate_package(ptr->package))
goto error;
if (ptr->section && !uci_validate_name(ptr->section))
ptr->flags |= UCI_LOOKUP_EXTENDED;