Jerasure icon indicating copy to clipboard operation
Jerasure copied to clipboard

[FIX] destination buffer of galois_wxx_region_multiply

Open TaranovK opened this issue 7 years ago • 2 comments

The manual says that if the dest buffer is NULL, then the result of multiplication will go to the source region buffer. However, multiply_region.w32 function, which is called by galois_wxx_region_multiply, assumes that the destination buffer is not NULL.

The proposed fix assigns destination buffer to source buffer if destination buffer is NULL.

TaranovK avatar Jan 21 '18 23:01 TaranovK

The second possible solution can be:

if (r2 == NULL) {
   gfp_array[8]->multiply_region.w32(gfp_array[8], region, region, multby, nbytes, 0);
} else {
   gfp_array[8]->multiply_region.w32(gfp_array[8], region, r2, multby, nbytes, add);
}

TaranovK avatar Jan 21 '18 23:01 TaranovK

So, this repo has been around forever because I was the first person who took Dr. Plank's code and posted it to github, but I've never really maintained it; it was pretty much just an easier way to browse the code than his tar archives. Could you submit this patch to Jerasure's gitlab at http://lab.jerasure.org/jerasure/jerasure ? I think it will get better attention there.

tsuraan avatar Feb 01 '18 20:02 tsuraan