提交 b75f08cb 编写于 作者: S Shane Lontis

Fix segfault in openssl app called with no args.

This is a result of removal of interactive mode.
Redirected it to now use 'openssl help'.
Reviewed-by: NMatt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/12164)
上级 24b6261e
......@@ -308,6 +308,13 @@ int help_main(int argc, char **argv)
char *prog;
HELP_CHOICE o;
DISPLAY_COLUMNS dc;
char *new_argv[3];
if (argc == 0) {
new_argv[0] = "help";
new_argv[1] = NULL;
return do_cmd(prog_init(), 1, new_argv);
}
prog = opt_init(argc, argv, help_options);
while ((o = opt_next()) != OPT_hEOF) {
......@@ -323,8 +330,6 @@ int help_main(int argc, char **argv)
}
if (opt_num_rest() == 1) {
char *new_argv[3];
new_argv[0] = opt_rest()[0];
new_argv[1] = "--help";
new_argv[2] = NULL;
......
#! /usr/bin/env perl
# Copyright 2020 The OpenSSL Project Authors. All Rights Reserved.
#
# Licensed under the Apache License 2.0 (the "License"). You may not use
# this file except in compliance with the License. You can obtain a copy
# in the file LICENSE in the source distribution or at
# https://www.openssl.org/source/license.html
use strict;
use warnings;
use OpenSSL::Test;
setup("test_app");
plan tests => 3;
ok(run(app(["openssl"])),
"Run openssl app with no args");
ok(run(app(["openssl", "help"])),
"Run openssl app with help");
ok(!run(app(["openssl", "-help"])),
"Run openssl app with incorrect arg");
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册