Fix comparison function used by modex test to check from
first non-zero value itself.

Coverity issue: 430125
Fixes: 2162d32c1c3 ("test/crypto: validate modex from first non-zero")
Cc: sta...@dpdk.org

Signed-off-by: Gowrishankar Muthukrishnan <gmuthukri...@marvell.com>
---
 app/test/test_cryptodev_asym.c | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/app/test/test_cryptodev_asym.c b/app/test/test_cryptodev_asym.c
index 1d88832146..f0b5d38543 100644
--- a/app/test/test_cryptodev_asym.c
+++ b/app/test/test_cryptodev_asym.c
@@ -3197,21 +3197,26 @@ static int send_one(void)
 }
 
 static int
-modular_cmpeq(const uint8_t *a, const uint8_t *b, size_t len)
+modular_cmpeq(const uint8_t *a, size_t a_len, const uint8_t *b, size_t b_len)
 {
-       const uint8_t *new_a = a, *new_b = b;
+       const uint8_t *new_a, *new_b;
        size_t i, j;
 
        /* Strip leading NUL bytes */
-       for (i = 0; i < len; i++)
+       for (i = 0; i < a_len; i++)
                if (a[i] != 0)
-                       new_a = &a[i];
+                       break;
 
-       for (j = 0; j < len; j++)
+       for (j = 0; j < b_len; j++)
                if (b[j] != 0)
-                       new_b = &b[i];
+                       break;
+
+       if (a_len - i != b_len - j)
+               return 1;
 
-       if (i != j || memcmp(new_a, new_b, len - i))
+       new_a = &a[i];
+       new_b = &b[j];
+       if (memcmp(new_a, new_b, a_len - i))
                return 1;
 
        return 0;
@@ -3251,7 +3256,7 @@ modular_exponentiation(const void *test_data)
 
        TEST_ASSERT_SUCCESS(send_one(),
                "Failed to process crypto op");
-       TEST_ASSERT_SUCCESS(modular_cmpeq(vector->reminder.data,
+       TEST_ASSERT_SUCCESS(modular_cmpeq(vector->reminder.data, 
vector->reminder.len,
                        self->result_op->asym->modex.result.data,
                        self->result_op->asym->modex.result.length),
                        "operation verification failed\n");
-- 
2.21.0

Reply via email to