Can someone tell me what I'm doing wrong?

Christopher R. Hertel crh at
Wed May 23 15:33:45 GMT 2001

> >>>>> "CRH" == Christopher R Hertel <crh at> 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.

Chris -)-----

Christopher R. Hertel -)-----                   University of Minnesota
crh at              Networking and Telecommunications Services

    Ideals are like stars; you will not succeed in touching them
    with your choose them as your guides, and following
    them you will reach your destiny.  --Carl Schultz

More information about the samba-technical mailing list