No null terminator, so we need memcpy