Fix variable-sized c strings

Previously, the terminating zero of variable-sized c strings was only
included when copying the message if the length of the string was not
a multiple of four.  mig_strncpy returns the length of the string
excluding the terminating zero.  Fix this by properly accounting for
the byte for the terminating zero in the array length.

* server.c (WritePackArgValue): Account for the terminating zero in
the array length.
* user.c (WritePackArgValue): Likewise.
Merge 'upstream/master'