|
 |
008921 |
commit 0eb6cd321e312e32b3ad12c34089466eae60cd88
|
|
 |
008921 |
Author: Corey Bryant <corey.bryant@canonical.com>
|
|
 |
008921 |
Date: Tue Jan 14 15:47:44 2020 -0500
|
|
 |
008921 |
|
|
 |
008921 |
Fix create_fake_frags_no_meta to use memset to fill frags
|
|
 |
008921 |
|
|
 |
008921 |
These aren't C strings; we shouldn't be using strncpy and friends.
|
|
 |
008921 |
|
|
 |
008921 |
Change-Id: I50cd7922dfa377ea27f3c9558a8a7268120ec733
|
|
 |
008921 |
Closes-Bug: #1859710
|
|
 |
008921 |
|
|
 |
008921 |
diff --git a/test/liberasurecode_test.c b/test/liberasurecode_test.c
|
|
 |
008921 |
index d3ca200..e60140f 100644
|
|
 |
008921 |
--- a/test/liberasurecode_test.c
|
|
 |
008921 |
+++ b/test/liberasurecode_test.c
|
|
 |
008921 |
@@ -385,8 +385,8 @@ int *create_skips_array(struct ec_args *args, int skip)
|
|
 |
008921 |
return buf;
|
|
 |
008921 |
}
|
|
 |
008921 |
|
|
 |
008921 |
-static int create_fake_frags_no_meta(char ***array, int num_frags,
|
|
 |
008921 |
- const char *data, int data_len)
|
|
 |
008921 |
+inline static int create_fake_frags_no_meta(char ***array, int num_frags,
|
|
 |
008921 |
+ const char data, int data_len)
|
|
 |
008921 |
{
|
|
 |
008921 |
// N.B. The difference from creat_frags_arry is to creat new
|
|
 |
008921 |
// memory allocation and set a copy of data/parity there. The
|
|
 |
008921 |
@@ -404,8 +404,7 @@ static int create_fake_frags_no_meta(char ***array, int num_frags,
|
|
 |
008921 |
// add data and parity frags
|
|
 |
008921 |
ptr = *array;
|
|
 |
008921 |
for (i = 0; i < num_frags; i++) {
|
|
 |
008921 |
- *ptr = (char *) malloc(data_len);
|
|
 |
008921 |
- strncpy(*ptr++, data, data_len);
|
|
 |
008921 |
+ *ptr++ = create_buffer(data_len, data);
|
|
 |
008921 |
_num_frags++;
|
|
 |
008921 |
}
|
|
 |
008921 |
|
|
 |
008921 |
@@ -660,7 +659,6 @@ static void test_decode_invalid_args()
|
|
 |
008921 |
// fake_data len should be bigger than fragment_header_t for
|
|
 |
008921 |
// the verifications
|
|
 |
008921 |
int fake_data_len = 1024;
|
|
 |
008921 |
- char *fake_data = create_buffer(fake_data_len, 'y');
|
|
 |
008921 |
|
|
 |
008921 |
desc = liberasurecode_instance_create(EC_BACKEND_NULL, &null_args);
|
|
 |
008921 |
if (-EBACKENDNOTAVAIL == desc) {
|
|
 |
008921 |
@@ -672,9 +670,8 @@ static void test_decode_invalid_args()
|
|
 |
008921 |
// test with invalid fragments (no metadata headers)
|
|
 |
008921 |
num_avail_frags = create_fake_frags_no_meta(&avail_frags, (null_args.k +
|
|
 |
008921 |
null_args.m),
|
|
 |
008921 |
- fake_data, fake_data_len);
|
|
 |
008921 |
+ 'y', fake_data_len);
|
|
 |
008921 |
assert(num_avail_frags > 0);
|
|
 |
008921 |
- free(fake_data);
|
|
 |
008921 |
|
|
 |
008921 |
rc = liberasurecode_decode(desc, avail_frags, num_avail_frags,
|
|
 |
008921 |
fake_data_len, 1,
|
|
 |
008921 |
@@ -697,7 +694,7 @@ static void test_decode_invalid_args()
|
|
 |
008921 |
|
|
 |
008921 |
// test with num_fragments < (k)
|
|
 |
008921 |
num_avail_frags = create_fake_frags_no_meta(&avail_frags, (null_args.k - 1),
|
|
 |
008921 |
- " ", 1);
|
|
 |
008921 |
+ ' ', 1);
|
|
 |
008921 |
assert(num_avail_frags > 0);
|
|
 |
008921 |
rc = liberasurecode_decode(desc, avail_frags, num_avail_frags,
|
|
 |
008921 |
fake_data_len, 1,
|