Can someone tell me what I'm doing wrong?
Christopher R. Hertel
crh at nts.umn.edu
Wed May 23 15:33:45 GMT 2001
> >>>>> "CRH" == Christopher R Hertel <crh at nts.umn.edu> writes:
> CRH> The strncpy() copy function is *dangerous* because it does not guarantee
> CRH> that the target string will be NUL-terminated. You should always do this:
> CRH> strncpy( target, source, strlen(source) + 1 );
> 1) You mean :
> target[GETTING_SIZEOF_ TARGET_SOMEHOW( target ) - 1] = '\0';
> strncpy( target, source, GETTING_SIZEOF_ TARGET_SOMEHOW( target ) - 1 );
> is the safer way.
> # simply getting 'strlen(source)+1' means it's same as strcpy().
You are correct. I was thinking, however, that since constants were
being used this would not be required. You are also correct, though,
that using a strcpy() would be the same.
Christopher R. Hertel -)----- University of Minnesota
crh at nts.umn.edu Networking and Telecommunications Services
Ideals are like stars; you will not succeed in touching them
with your hands...you choose them as your guides, and following
them you will reach your destiny. --Carl Schultz
More information about the samba-technical