int pmempool_info_func(char *appname, int argc, char *argv[]) { int ret = 0; struct pmem_info *pip = pmempool_info_alloc(); /* read command line arguments */ if ((ret = parse_args(appname, argc, argv, &pip->args, pip->opts)) == 0) { /* set some output format values */ out_set_vlevel(pip->args.vlevel); out_set_col_width(pip->args.col_width); ret = pmempool_info_file(pip, pip->args.file); } pmempool_info_free(pip); return ret; }
/* * pmempool_rm_func -- main function for rm command */ int pmempool_rm_func(char *appname, int argc, char *argv[]) { int opt; while ((opt = getopt_long(argc, argv, optstr, long_options, NULL)) != -1) { switch (opt) { case 'h': pmempool_rm_help(appname); return 0; case 'v': vlevel++; break; case 's': only_pools = 1; break; case 'f': force = 1; ask_mode = ASK_NEVER; break; case 'i': ask_mode = ASK_ALWAYS; break; default: print_usage(appname); return -1; } } out_set_vlevel(vlevel); if (optind == argc) { print_usage(appname); return -1; } for (int i = optind; i < argc; i++) { char *file = argv[i]; /* check if file exists and we can read it */ int exists = access(file, F_OK | R_OK) == 0; if (!exists) { /* ignore not accessible file if force flag is set */ if (force) continue; err(1, "cannot remove '%s'", file); } int is_poolset = util_is_poolset_file(file) == 1; if (is_poolset) outv(2, "poolset file: %s\n", file); else outv(2, "pool file : %s\n", file); if (is_poolset) { rm_poolset(file); if (!only_pools) rm_file(file); } else { rm_file(file); } } return 0; }