The branch master has been updated via b0a4cbead384e2ac8dbb697795ace242e1b07c18 (commit) from d3dbc9b50043fd1b4464b3f2b0ab8c54075099d6 (commit)
- Log ----------------------------------------------------------------- commit b0a4cbead384e2ac8dbb697795ace242e1b07c18 Author: Dr. David von Oheimb <david.von.ohe...@siemens.com> Date: Mon Sep 7 19:39:52 2020 +0200 apps/cmp.c: Improve safeguard assertion on consistency of cmp_options[] and cmp_vars[] Reviewed-by: Paul Dale <paul.d...@oracle.com> (Merged from https://github.com/openssl/openssl/pull/12836) ----------------------------------------------------------------------- Summary of changes: apps/cmp.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/cmp.c b/apps/cmp.c index ce2513bd0d..003c75517d 100644 --- a/apps/cmp.c +++ b/apps/cmp.c @@ -2153,7 +2153,16 @@ static int read_config(void) * would not make sense within the config file. * Moreover, these two options and OPT_VERBOSITY have already been handled. */ + int n_options = OSSL_NELEM(cmp_options) - 1; + for (i = start - OPT_HELP, opt = &cmp_options[start]; + opt->name; i++, opt++) + if (!strcmp(opt->name, OPT_SECTION_STR) + || !strcmp(opt->name, OPT_MORE_STR)) + n_options--; + OPENSSL_assert(OSSL_NELEM(cmp_vars) == n_options + + OPT_PROV__FIRST + 1 - OPT_PROV__LAST + + OPT_V__FIRST + 1 - OPT_V__LAST); for (i = start - OPT_HELP, opt = &cmp_options[start]; opt->name; i++, opt++) { if (!strcmp(opt->name, OPT_SECTION_STR) @@ -2167,10 +2176,6 @@ static int read_config(void) && opt->retval < OPT_V__LAST); if (provider_option || verification_option) i--; - if (cmp_vars[i].txt == NULL) { - CMP_err1("internal: cmp_vars array too short, i=%d", i); - return 0; - } switch (opt->valtype) { case '-': case 'n':