Jerasure
Jerasure copied to clipboard
[FIX] destination buffer of galois_wxx_region_multiply
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.
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);
}
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.