X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fuci.git;a=blobdiff_plain;f=util.c;fp=util.c;h=7f37e882fc5348bc1254de3a87f6473d95d2f485;hp=d5bcd8a7b99a05a1c9a16e575e37dfca6fcc4c0a;hb=8500c9b01699a94c0516ee5cbc10e8c0fb7b0408;hpb=179b6f5fced8a0c1028ee56451efa26e40392961 diff --git a/util.c b/util.c index d5bcd8a..7f37e88 100644 --- a/util.c +++ b/util.c @@ -120,6 +120,7 @@ static void uci_alloc_parse_context(struct uci_context *ctx) int uci_parse_ptr(struct uci_context *ctx, struct uci_ptr *ptr, char *str) { char *last = NULL; + char *tmp; UCI_HANDLE_ERR(ctx); UCI_ASSERT(ctx, str); @@ -153,6 +154,10 @@ int uci_parse_ptr(struct uci_context *ctx, struct uci_ptr *ptr, char *str) ptr->target = UCI_TYPE_OPTION; } + tmp = strsep(&str, "."); + if (tmp) + goto error; + lastval: if (ptr->package && !uci_validate_str(ptr->package, false)) goto error;