From d67548adfe4b98dc3202646a4239abb9469b7891 Mon Sep 17 00:00:00 2001 From: Milan Broz Date: Sat, 27 Jul 2013 12:33:22 +0200 Subject: Fails if more device arguments are present for isLuks. Fixes http://code.google.com/p/cryptsetup/issues/detail?id=165 --- src/cryptsetup.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/cryptsetup.c b/src/cryptsetup.c index 4722abd..5c2b96a 100644 --- a/src/cryptsetup.c +++ b/src/cryptsetup.c @@ -1010,6 +1010,12 @@ static int action_isLuks(void) struct crypt_device *cd = NULL; int r; + /* FIXME: argc > max should be checked for other operations as well */ + if (action_argc > 1) { + log_err(_("Only one device argument for isLuks operation is supported.\n")); + return -ENODEV; + } + if ((r = crypt_init(&cd, action_argv[0]))) goto out; @@ -1500,7 +1506,7 @@ int main(int argc, const char **argv) usage(popt_context, EXIT_FAILURE, _("Unknown action."), poptGetInvocationName(popt_context)); - if(action_argc < action->required_action_argc) + if (action_argc < action->required_action_argc) help_args(action, popt_context); /* FIXME: rewrite this from scratch */ -- cgit v1.2.3