Fix NULL dereference, out-of-bound, bad bit shift issues reported by coverity scan.
Coverity issue: 384440, 384435, 384433, 384429 Fixes: 36128a67c27 ("examples/fips_validation: add asymmetric validation") Cc: sta...@dpdk.org Signed-off-by: Gowrishankar Muthukrishnan <gmuthukri...@marvell.com> Acked-by: Brian Dooley <brian.doo...@intel.com> --- v2: - no changes -- examples/fips_validation/fips_validation_rsa.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/examples/fips_validation/fips_validation_rsa.c b/examples/fips_validation/fips_validation_rsa.c index f675b51051..55f81860a0 100644 --- a/examples/fips_validation/fips_validation_rsa.c +++ b/examples/fips_validation/fips_validation_rsa.c @@ -328,6 +328,9 @@ parse_test_rsa_json_interim_writeback(struct fips_val *val) if (prepare_vec_rsa() < 0) return -1; + if (!vec.rsa.e.val) + return -1; + writeback_hex_str("", info.one_line_text, &vec.rsa.n); obj = json_string(info.one_line_text); json_object_set_new(json_info.json_write_group, "n", obj); @@ -474,7 +477,7 @@ fips_test_randomize_message(struct fips_val *msg, struct fips_val *rand) uint16_t rv_len; if (!msg->val || !rand->val || rand->len > RV_BUF_LEN - || msg->len > FIPS_TEST_JSON_BUF_LEN) + || msg->len > (FIPS_TEST_JSON_BUF_LEN - 1)) return -EINVAL; memset(rv, 0, sizeof(rv)); @@ -503,7 +506,7 @@ fips_test_randomize_message(struct fips_val *msg, struct fips_val *rand) m[i + j] ^= rv[j]; m[i + j] = ((uint8_t *)&rv_bitlen)[0]; - m[i + j + 1] = (((uint8_t *)&rv_bitlen)[1] >> 8) & 0xFF; + m[i + j + 1] = ((uint8_t *)&rv_bitlen)[1]; rte_free(msg->val); msg->len = (rv_bitlen + m_bitlen + 16) / 8; -- 2.25.1