X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fuci.git;a=blobdiff_plain;f=cli.c;h=78707281ef0e178294f23fbe4bae0bd9e53126b7;hp=1a478bb05eae953de0f4284f6bc78f586b23ef3e;hb=b12bd89466dfb7adf38b71c039a0d56704492e95;hpb=4b1ddfb8358bcd57560406db26d7041c9c0cb90b diff --git a/cli.c b/cli.c index 1a478bb..7870728 100644 --- a/cli.c +++ b/cli.c @@ -19,7 +19,7 @@ static const char *appname = "uci"; static enum { CLI_FLAG_MERGE = (1 << 0), } flags; -static FILE *input = stdin; +static FILE *input; static struct uci_context *ctx; enum { @@ -50,8 +50,10 @@ static void uci_usage(int argc, char **argv) "Options:\n" "\t-f use as input instead of stdin\n" "\t-m when importing, merge data into an existing package\n" - "\t-s force strict mode (stop on parser errors)\n" + "\t-s force strict mode (stop on parser errors, default)\n" "\t-S disable strict mode\n" + "\t-n name unnamed sections on export (default)\n" + "\t-N don't name unnamed sections\n" "\n", argv[0] ); @@ -109,10 +111,8 @@ static int package_cmd(int cmd, char *package) static int uci_do_import(int argc, char **argv) { struct uci_package *package = NULL; - char **configs = NULL; char *name = NULL; int ret = UCI_OK; - char **p; if (argc > 2) return 255; @@ -295,13 +295,14 @@ int main(int argc, char **argv) int ret; int c; + input = stdin; ctx = uci_alloc_context(); if (!ctx) { fprintf(stderr, "Out of memory\n"); return 1; } - while((c = getopt(argc, argv, "mfsS")) != -1) { + while((c = getopt(argc, argv, "mf:sSnN")) != -1) { switch(c) { case 'f': input = fopen(optarg, "r"); @@ -320,6 +321,12 @@ int main(int argc, char **argv) ctx->flags &= ~UCI_FLAG_STRICT; ctx->flags |= UCI_FLAG_PERROR; break; + case 'n': + ctx->flags |= UCI_FLAG_EXPORT_NAME; + break; + case 'N': + ctx->flags &= ~UCI_FLAG_EXPORT_NAME; + break; default: uci_usage(argc, argv); break;