int jt_lcfg_listparam(int argc, char **argv) { int rc = 0, i; struct param_opts popt; char pattern[PATH_MAX]; char *path; rc = listparam_cmdline(argc, argv, &popt); if (rc == argc && popt.po_recursive) { rc--; /* we know at least "-R" is a parameter */ argv[rc] = "*"; } else if (rc < 0 || rc >= argc) { return CMD_HELP; } for (i = rc; i < argc; i++) { path = argv[i]; clean_path(path); lprocfs_param_pattern(argv[0], path, pattern, sizeof(pattern)); rc = listparam_display(&popt, pattern); if (rc < 0) return rc; } return 0; }
int jt_lcfg_listparam(int argc, char **argv) { int rc = 0, index, i; struct param_opts popt; char *path; memset(&popt, 0, sizeof(popt)); index = listparam_cmdline(argc, argv, &popt); if (index < 0 || index >= argc) return CMD_HELP; for (i = index; i < argc; i++) { int rc2; path = argv[i]; rc2 = clean_path(&popt, path); if (rc2 < 0) { fprintf(stderr, "error: %s: cleaning '%s': %s\n", jt_cmdname(argv[0]), path, strerror(-rc2)); if (rc == 0) rc = rc2; continue; } rc2 = param_display(&popt, path, NULL, LIST_PARAM); if (rc2 < 0) { fprintf(stderr, "error: %s: listing '%s': %s\n", jt_cmdname(argv[0]), path, strerror(-rc2)); if (rc == 0) rc = rc2; continue; } } return rc; }