Works perfectly now! Thanks.
great. i initially only tested with OpenMPI, which seems to be more forgiving than MPICH, when the receiver posts a larger buffer than the sender process. so the additional changes were needed to not only communicate the terminating null character, but also make the message lengths equal. hopefully all cases are now covered. the code passes without error through both MPICH and OpenMPI and also has the uninitialized memory accesses removed, that were signaled by valgrind’s memcheck tool.