From f38142d35e41cb22564ad4cca0b6e57ed8127977 Mon Sep 17 00:00:00 2001 From: Zhi Guan Date: Wed, 17 Jun 2026 16:07:18 +0800 Subject: [PATCH] Fix bugs --- CMakeLists.txt | 2 +- include/gmssl/version.h | 2 +- tools/hsskeygen.c | 4 ++++ tools/rand.c | 2 ++ 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f27faef9..f76a8d93 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -819,7 +819,7 @@ endif() # set(CPACK_PACKAGE_NAME "GmSSL") set(CPACK_PACKAGE_VENDOR "GmSSL develop team") -set(CPACK_PACKAGE_VERSION "3.2.0-dev.1079") +set(CPACK_PACKAGE_VERSION "3.2.0-dev.1080") set(CPACK_PACKAGE_DESCRIPTION_FILE ${PROJECT_SOURCE_DIR}/README.md) set(CPACK_NSIS_MODIFY_PATH ON) include(CPack) diff --git a/include/gmssl/version.h b/include/gmssl/version.h index 6288af97..6cdea837 100644 --- a/include/gmssl/version.h +++ b/include/gmssl/version.h @@ -18,7 +18,7 @@ extern "C" { #define GMSSL_VERSION_NUM 30200 -#define GMSSL_VERSION_STR "GmSSL 3.2.0-dev.1079" +#define GMSSL_VERSION_STR "GmSSL 3.2.0-dev.1080" int gmssl_version_num(void); const char *gmssl_version_str(void); diff --git a/tools/hsskeygen.c b/tools/hsskeygen.c index e9615f70..f4e58651 100644 --- a/tools/hsskeygen.c +++ b/tools/hsskeygen.c @@ -81,6 +81,10 @@ int hsskeygen_main(int argc, char **argv) tok = strtok(lms_types_str, ":"); while (tok) { + if (levels >= sizeof(lms_types_val)/sizeof(lms_types_val[0])) { + fprintf(stderr, "%s: too many lms types\n", prog); + goto end; + } if (!(lms_types_val[levels] = lms_type_from_name(tok))) { fprintf(stderr, "%s: invalid lms_type `%s`\n", prog, tok); goto end; diff --git a/tools/rand.c b/tools/rand.c index 7b1e02a3..5120fbf6 100644 --- a/tools/rand.c +++ b/tools/rand.c @@ -92,6 +92,7 @@ bad: } #else fprintf(stderr, "%s: `-rdrand` is not supported on your platform\n", prog); + goto end; #endif } else if (rdseed) { #ifdef ENABLE_INTEL_RDSEED @@ -101,6 +102,7 @@ bad: } #else fprintf(stderr, "%s: `-rdseed` is not supported on your platform\n", prog); + goto end; #endif } else { if (rand_bytes(buf, len) != 1) {