Generally, if the content to be copied is smaller than the size of the target buffer, memcpy()ing the size of the target buffer will copy data from beyond the end of the source string.  This is wasteful, at the very least; it also reads memory that not only might not be initialized but might (in general, though not in the present case) be in a page that isn't allocated.  If you know that the buffers being copied here are typically full (or very nearly so), then I accept sizeof() is OK here, given that the two buffers are of the same size.

The use of strncpy() with a short buffer-size, in the present code, is definitely wrong, anyway.