diff options
Diffstat (limited to 'tools/lvdisplay.c')
-rw-r--r-- | tools/lvdisplay.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/tools/lvdisplay.c b/tools/lvdisplay.c index 69971b1b..47d546da 100644 --- a/tools/lvdisplay.c +++ b/tools/lvdisplay.c @@ -36,7 +36,20 @@ int lvdisplay_single(struct cmd_context *cmd, struct logical_volume *lv, int lvdisplay(struct cmd_context *cmd, int argc, char **argv) { - /* FIXME Allow VG args via process_each */ + if (arg_count(cmd, columns_ARG)) { + if (arg_count(cmd, colon_ARG) || arg_count(cmd, maps_ARG)) { + log_error("Incompatible options selected"); + return EINVALID_CMD_LINE; + } + return lvs(cmd, argc, argv); + } else if (arg_count(cmd, aligned_ARG) || + arg_count(cmd, noheadings_ARG) || + arg_count(cmd, options_ARG) || + arg_count(cmd, separator_ARG) || + arg_count(cmd, sort_ARG) || arg_count(cmd, unbuffered_ARG)) { + log_error("Incompatible options selected"); + return EINVALID_CMD_LINE; + } if (arg_count(cmd, colon_ARG) && arg_count(cmd, verbose_ARG)) { log_error("Options -v and -c are incompatible"); |