APPS and TEST: Make sure prog name is set for usage output
authorDr. David von Oheimb <David.von.Oheimb@siemens.com>
Sat, 3 Apr 2021 12:05:09 +0000 (14:05 +0200)
committerDr. David von Oheimb <dev@ddvo.net>
Wed, 14 Apr 2021 14:51:11 +0000 (16:51 +0200)
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14841)

apps/cmp.c
apps/lib/opt.c
test/evp_fetch_prov_test.c
test/evp_test.c
test/testutil.h

index 135c5098311a0d8c9bf94a31a02d6f975ec125d3..53996a7cc833d7b1659a2012072b15f14db62e7a 100644 (file)
@@ -2536,8 +2536,8 @@ int cmp_main(int argc, char **argv)
     char mock_server[] = "mock server:1";
     int ret = 0; /* default: failure */
 
+    prog = opt_appname(argv[0]);
     if (argc <= 1) {
-        prog = opt_appname(argv[0]);
         opt_help(cmp_options);
         goto err;
     }
index 8cc520daec86aaffc0885aa9cd732ff1e9f0ff74..4077cf293657e40fe0845c495a237dffc952b5eb 100644 (file)
@@ -162,6 +162,9 @@ char *opt_init(int ac, char **av, const OPTIONS *o)
     opts = o;
     unknown = NULL;
 
+    /* Make sure prog name is set for usage output */
+    (void)opt_progname(argv[0]);
+
     /* Check all options up until the PARAM marker (if present) */
     for (; o->name != NULL && o->name != OPT_PARAM_STR; ++o) {
 #ifndef NDEBUG
index 18e57c76c6c108bfb47e345f52ec68ad17539f10..ec339ebbc3d02d7c9912181aa6185c70b01fc011 100644 (file)
@@ -47,8 +47,7 @@ const OPTIONS *test_get_options(void)
         { "fetchfail", OPT_FETCH_FAILURE, '-', "fetch is expected to fail" },
         { "defaultctx", OPT_USE_DEFAULTCTX, '-',
           "Use the default context if this is set" },
-        { OPT_HELP_STR, 1, '-',
-          "file\tProvider names to explicitly load\n" },
+        { OPT_HELP_STR, 1, '-', "file\tProvider names to explicitly load\n" },
         { NULL }
     };
     return test_options;
index a7a3cc4bb3204922b3ed7653538dddd16d8f255e..503aaa0e8e200f15820b52d156c9a5b9707d2282 100644 (file)
@@ -3570,8 +3570,7 @@ const OPTIONS *test_get_options(void)
         OPT_TEST_OPTIONS_WITH_EXTRA_USAGE("[file...]\n"),
         { "config", OPT_CONFIG_FILE, '<',
           "The configuration file to use for the libctx" },
-        { OPT_HELP_STR, 1, '-',
-          "file\tFile to run tests on.\n" },
+        { OPT_HELP_STR, 1, '-', "file\tFile to run tests on.\n" },
         { NULL }
     };
     return test_options;
index 8457a2a3842bac126aa603f65ee4509dd3aa3bcf..9311e2ce584a17b31b49785703e52e7f53f57236 100644 (file)
  * the test system.
  *
  * Tests that need to use opt_next() need to specify
- *  (1) test_get_options() containing an options[] (Which should include either
- *    OPT_TEST_OPTIONS_DEFAULT_USAGE OR
- *    OPT_TEST_OPTIONS_WITH_EXTRA_USAGE).
+ *  (1) test_get_options() containing an options[] which should include either
+ *    OPT_TEST_OPTIONS_DEFAULT_USAGE or
+ *    OPT_TEST_OPTIONS_WITH_EXTRA_USAGE(...).
  *  (2) An enum outside the test_get_options() which contains OPT_TEST_ENUM, as
  *      well as the additional options that need to be handled.
  *  (3) case OPT_TEST_CASES: break; inside the opt_next() handling code.
@@ -232,7 +232,7 @@ void cleanup_tests(void);
  * Used to supply test specific command line options,
  * If non optional parameters are used, then the first entry in the OPTIONS[]
  * should contain:
- * { OPT_HELP_STR, 1, '-', "list of non optional commandline params\n"},
+ * { OPT_HELP_STR, 1, '-', "<list of non-optional commandline params>\n"},
  * The last entry should always be { NULL }.
  *
  * Run the test locally using './test/test_name -help' to check the usage.