The strncpy function copies no more than maxchar characters from
source to dest, up to but not including the null terminator of
source. If source contains less than maxchar characters, dest
is padded with null characters. If source contains greater than
or equal to maxchar characters, as many characters as possible
are copied to dest. Be aware that the dest argument might not be
terminated by a null character after a call to strncpy.