summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--c_src/cmd_counters.c4
-rw-r--r--c_src/cmd_dump.c4
-rw-r--r--c_src/cmd_format.c4
-rw-r--r--c_src/cmd_image.c8
-rw-r--r--c_src/cmd_key.c63
-rw-r--r--c_src/cmd_list_journal.c4
-rw-r--r--c_src/cmd_migrate.c4
-rw-r--r--c_src/cmd_strip_alloc.c4
-rw-r--r--c_src/cmd_super.c8
9 files changed, 86 insertions, 17 deletions
diff --git a/c_src/cmd_counters.c b/c_src/cmd_counters.c
index 9adde242..c4827d60 100644
--- a/c_src/cmd_counters.c
+++ b/c_src/cmd_counters.c
@@ -32,8 +32,10 @@ int cmd_reset_counters(int argc, char *argv[])
args_shift(optind);
char *dev = arg_pop();
- if (!dev)
+ if (!dev) {
+ reset_counters_usage();
die("please supply a device");
+ }
if (argc)
die("too many arguments");
diff --git a/c_src/cmd_dump.c b/c_src/cmd_dump.c
index 08051802..5f354272 100644
--- a/c_src/cmd_dump.c
+++ b/c_src/cmd_dump.c
@@ -371,8 +371,10 @@ int cmd_dump(int argc, char *argv[])
if (!opts.out)
die("Please supply output filename");
- if (!argc)
+ if (!argc) {
+ dump_usage();
die("Please supply device(s) to check");
+ }
darray_const_str dev_names = get_or_split_cmdline_devs(argc, argv);
diff --git a/c_src/cmd_format.c b/c_src/cmd_format.c
index dfd54259..873c1a69 100644
--- a/c_src/cmd_format.c
+++ b/c_src/cmd_format.c
@@ -249,8 +249,10 @@ int cmd_format(int argc, char *argv[])
if (unconsumed_dev_option)
die("Options for devices apply to subsequent devices; got a device option with no device");
- if (!devices.nr)
+ if (!devices.nr) {
+ format_usage();
die("Please supply a device");
+ }
if (opts.source && !initialize)
die("--source, --no_initialize are incompatible");
diff --git a/c_src/cmd_image.c b/c_src/cmd_image.c
index 65bad661..9da3ed34 100644
--- a/c_src/cmd_image.c
+++ b/c_src/cmd_image.c
@@ -614,8 +614,10 @@ static int cmd_image_create(int argc, char *argv[])
}
args_shift(optind);
- if (argc != 1)
+ if (argc != 1) {
+ image_create_usage();
die("Please supply a filename for the new image");
+ }
dev_opts.path = argv[0];
@@ -784,8 +786,10 @@ static int cmd_image_update(int argc, char *argv[])
}
args_shift(optind);
- if (argc != 1)
+ if (argc != 1) {
+ image_update_usage();
die("Please supply a filename");
+ }
return image_update(source, argv[0],
keep_alloc, verbosity);
diff --git a/c_src/cmd_key.c b/c_src/cmd_key.c
index 6cdf1d3f..1019c6f3 100644
--- a/c_src/cmd_key.c
+++ b/c_src/cmd_key.c
@@ -39,7 +39,6 @@ int cmd_unlock(int argc, char *argv[])
char *passphrase = NULL;
int opt;
-
while ((opt = getopt_long(argc, argv, "cf:k:h", longopts, NULL)) != -1)
switch (opt) {
case 'c':
@@ -58,8 +57,10 @@ int cmd_unlock(int argc, char *argv[])
args_shift(optind);
char *dev = arg_pop();
- if (!dev)
+ if (!dev) {
+ unlock_usage();
die("Please supply a device");
+ }
if (argc)
die("Too many arguments");
@@ -93,11 +94,36 @@ int cmd_unlock(int argc, char *argv[])
return 0;
}
+static void set_passphrase_usage(void)
+{
+ puts("bcachefs set-passphares - change passphrase on an encrypted filesystem\n"
+ "Usage: bcachefs set-passphares device\n"
+ "\n"
+ "Options:\n"
+ " -h, --help Display this help and exit\n"
+ "Report bugs to <linux-bcachefs@vger.kernel.org>");
+}
+
int cmd_set_passphrase(int argc, char *argv[])
{
- args_shift(1);
- if (!argc)
+ static const struct option longopts[] = {
+ { "help", no_argument, NULL, 'h' },
+ { NULL }
+ };
+
+ int opt;
+ while ((opt = getopt_long(argc, argv, "h", longopts, NULL)) != -1)
+ switch (opt) {
+ case 'h':
+ set_passphrase_usage();
+ exit(EXIT_SUCCESS);
+ }
+ args_shift(optind);
+
+ if (!argc) {
+ set_passphrase_usage();
die("Please supply one or more devices");
+ }
darray_const_str devs = get_or_split_cmdline_devs(argc, argv);
@@ -133,11 +159,36 @@ int cmd_set_passphrase(int argc, char *argv[])
return 0;
}
+static void remove_passphrase_usage(void)
+{
+ puts("bcachefs remove-passphares - remove passphrase on an encrypted filesystem\n"
+ "Usage: bcachefs remove-passphares device\n"
+ "\n"
+ "Options:\n"
+ " -h, --help Display this help and exit\n"
+ "Report bugs to <linux-bcachefs@vger.kernel.org>");
+}
+
int cmd_remove_passphrase(int argc, char *argv[])
{
- args_shift(1);
- if (!argc)
+ static const struct option longopts[] = {
+ { "help", no_argument, NULL, 'h' },
+ { NULL }
+ };
+
+ int opt;
+ while ((opt = getopt_long(argc, argv, "h", longopts, NULL)) != -1)
+ switch (opt) {
+ case 'h':
+ set_passphrase_usage();
+ exit(EXIT_SUCCESS);
+ }
+ args_shift(optind);
+
+ if (!argc) {
+ set_passphrase_usage();
die("Please supply one or more devices");
+ }
darray_const_str devs = get_or_split_cmdline_devs(argc, argv);
diff --git a/c_src/cmd_list_journal.c b/c_src/cmd_list_journal.c
index 5f91337d..9371d062 100644
--- a/c_src/cmd_list_journal.c
+++ b/c_src/cmd_list_journal.c
@@ -552,8 +552,10 @@ int cmd_list_journal(int argc, char *argv[])
}
args_shift(optind);
- if (!argc)
+ if (!argc) {
+ list_journal_usage();
die("Please supply device(s) to open");
+ }
darray_const_str devs = get_or_split_cmdline_devs(argc, argv);
diff --git a/c_src/cmd_migrate.c b/c_src/cmd_migrate.c
index 1b08577f..aa17a160 100644
--- a/c_src/cmd_migrate.c
+++ b/c_src/cmd_migrate.c
@@ -353,8 +353,10 @@ int cmd_migrate(int argc, char *argv[])
exit(EXIT_SUCCESS);
}
- if (!fs_path)
+ if (!fs_path) {
+ migrate_usage();
die("Please specify a filesystem to migrate");
+ }
if (format_opts.encrypted && !no_passphrase)
format_opts.passphrase = read_passphrase_twice("Enter passphrase: ");
diff --git a/c_src/cmd_strip_alloc.c b/c_src/cmd_strip_alloc.c
index e16eb093..90e733a7 100644
--- a/c_src/cmd_strip_alloc.c
+++ b/c_src/cmd_strip_alloc.c
@@ -96,8 +96,8 @@ int cmd_strip_alloc(int argc, char *argv[])
args_shift(optind);
if (!argc) {
- fprintf(stderr, "Please supply device(s)\n");
- exit(8);
+ strip_alloc_usage();
+ die("Please supply device(s)");
}
darray_const_str devs = get_or_split_cmdline_devs(argc, argv);
diff --git a/c_src/cmd_super.c b/c_src/cmd_super.c
index 7e270769..18e4df80 100644
--- a/c_src/cmd_super.c
+++ b/c_src/cmd_super.c
@@ -150,8 +150,10 @@ int cmd_show_super(int argc, char *argv[])
args_shift(optind);
char *dev = arg_pop();
- if (!dev)
+ if (!dev) {
+ show_super_usage();
die("please supply a device");
+ }
if (argc)
die("too many arguments");
@@ -449,8 +451,10 @@ int cmd_recover_super(int argc, char *argv[])
die("--dev_idx requires --src_device");
char *dev_path = arg_pop();
- if (!dev_path)
+ if (!dev_path) {
+ recover_super_usage();
die("please supply a device");
+ }
if (argc)
die("too many arguments");