diff options
author | Miles Bader <miles@gnu.org> | 1996-09-27 16:56:36 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 1996-09-27 16:56:36 +0000 |
commit | d48cd547fe32c4821ccd413ba7280632b9bbef0f (patch) | |
tree | d25d0338820b2f27cb04e62bcf46efa15cd10f0c /utils | |
parent | 378ed2ed98bd4259e28d9c3003aac19ab927bc3b (diff) |
(W_TYPE):
Renamed from W_KIND; all uses changed.
(doc):
Updated.
(options, main):
Change --kind/-k to --type/-t.
Add --flags/-f option.
(print_store):
Print flags separately from type.
(W_FLAGS):
New macro.
Diffstat (limited to 'utils')
-rw-r--r-- | utils/storeinfo.c | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/utils/storeinfo.c b/utils/storeinfo.c index 0bfc1b1f..96287d52 100644 --- a/utils/storeinfo.c +++ b/utils/storeinfo.c @@ -36,7 +36,8 @@ char *argp_program_version = STANDARD_HURD_VERSION (storeinfo); static struct argp_option options[] = { - {"kind", 'k', 0, 0, "Print the type of store behind FILE"}, + {"type", 't', 0, 0, "Print the type of store behind FILE"}, + {"flags", 'f', 0, 0, "Print the flags associated with FILE's store"}, {"name", 'n', 0, 0, "Print the name of the store behind FILE"}, {"blocks", 'b', 0, 0, "Print the number of blocks in FILE"}, {"block-size", 'B', 0, 0, "Print the block size of FILE's store"}, @@ -50,26 +51,27 @@ static struct argp_option options[] = }; static char *args_doc = "FILE..."; static char *doc = "Show information about storage used by FILE..." -"\vWith no FILE arguments, the file attached to standard \ -input is used. The fields to be printed are separated by colons, in this \ -order: PREFIX: KIND: NAME: BLOCK-SIZE: BLOCKS: SIZE: RUNS. If the store is a \ -composite one and --children is specified, children are printed on lines \ -following the main store, indented accordingly. By default, all \ -fields, and children, are printed."; +"\vWith no FILE arguments, the file attached to standard" +" input is used. The fields to be printed are separated by colons, in this" +" order: PREFIX: TYPE (FLAGS): NAME: BLOCK-SIZE: BLOCKS: SIZE: RUNS." +" If the store is a composite one and --children is specified, children" +" are printed on lines following the main store, indented accordingly." +" By default, all fields, and children, are printed."; /* ---------------------------------------------------------------- */ /* Things we can print about a file's storage. */ #define W_SOURCE 0x01 -#define W_KIND 0x02 +#define W_TYPE 0x02 #define W_NAME 0x04 #define W_BLOCKS 0x08 #define W_BLOCK_SIZE 0x10 #define W_SIZE 0x20 #define W_RUNS 0x40 #define W_CHILDREN 0x80 +#define W_FLAGS 0x100 -#define W_ALL 0xFF +#define W_ALL 0x1FF /* Print a line of information (exactly what is determinted by WHAT) about store to stdout. LEVEL is the desired indentation level. */ @@ -113,9 +115,9 @@ print_store (struct store *store, int level, unsigned what) putchar (' '); } - pstr (store->class->name,W_KIND); + pstr (store->class->name,W_TYPE); - if (store->flags && (what & W_KIND)) + if (store->flags && (what & W_FLAGS)) { int t = 0; /* flags tested */ int f = 1; @@ -149,7 +151,7 @@ print_store (struct store *store, int level, unsigned what) putchar (';'); printf ("0x%x", store->flags); } - putchar ('('); + putchar (')'); } pstr (store->name, W_NAME); @@ -216,7 +218,8 @@ main(int argc, char *argv[]) case 'p': print_prefix = 1; break; case 'P': print_prefix = 0; break; - case 'k': what |= W_KIND; break; + case 't': what |= W_TYPE; break; + case 'f': what |= W_FLAGS; break; case 'n': what |= W_NAME; break; case 'b': what |= W_BLOCKS; break; case 'B': what |= W_BLOCK_SIZE; break; |