summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Andrzej Siewior <sebastian@breakpoint.cc>2020-06-06 12:55:59 +0200
committerRichard Levitte <levitte@openssl.org>2020-06-23 12:23:02 +0200
commit96786ad12308215621142f7cb2ef21a9aca30665 (patch)
treed221924f1b0c038b0b5c76c3b988da7d6296cb39
parent90cf3099df43a5419d59e6a66e75970cbb50a28a (diff)
APPS: Fix invoking openssl without a command
Invoking help with "empty" argc leads to a segfault. Invoke do_cmd() with help as argument which invokes help_main() with proper argv. Fixes #12069 Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/12070)
-rw-r--r--apps/openssl.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/openssl.c b/apps/openssl.c
index 4c97936824..fdf4a746f8 100644
--- a/apps/openssl.c
+++ b/apps/openssl.c
@@ -205,6 +205,8 @@ static void setup_trace(const char *str)
}
#endif /* OPENSSL_NO_TRACE */
+static char *help_argv[] = { "help" };
+
int main(int argc, char *argv[])
{
FUNCTION f, *fp;
@@ -268,7 +270,7 @@ int main(int argc, char *argv[])
/* If there's a command, run with that, otherwise "help". */
ret = argc > 0
? do_cmd(prog, argc, argv)
- : help_main(argc, argv);
+ : do_cmd(prog, 1, help_argv);
end:
app_providers_cleanup();