Thanks for digging into this, but I thing your analysis is wrong. From "man 3posix memcpy":
"The memcpy() function shall copy n bytes from the object pointed to by s2 into the object
pointed to by s1. If copying takes place between objects that overlap, the behavior is undefined."
mod_ssl must use memmove if the buffers may overlap. Of course, the overlapping buffers may be another bug in mod_ssl. I will look into it.
Thanks for digging into this, but I thing your analysis is wrong. From "man 3posix memcpy":
"The memcpy() function shall copy n bytes from the object pointed to by s2 into the object
pointed to by s1. If copying takes place between objects that overlap, the behavior is undefined."
mod_ssl must use memmove if the buffers may overlap. Of course, the overlapping buffers may be another bug in mod_ssl. I will look into it.