[Asterisk-Dev] [RFC] strncpy -> ast_copy_string
Steve Underwood
steveu at coppice.org
Sun May 1 19:38:04 MST 2005
Hey, they changed it. strncpy never used to do that :-\ I wonder if that
was to avoid some securiy issues with what might have remained in the
buffer. Whatever, I don't agree with changing the behaviour of well
estabilished functions. That sucks.
Regards,
Steve
Kevin P. Fleming wrote:
> Steve Underwood wrote:
>
>> I think you need to look up the definition of the strncpy function.
>> It doesn't zero fill anything. It only copies what is needed.
>
>
> 'man strncpy' on a recent Linux box contains:
>
> DESCRIPTION
> The strcpy() function copies the string pointed to by src
> (including the terminating ‘\0' character) to the array pointed to by
> dest. The strings may not overlap, and the destination string
> dest must be large enough to receive the copy.
>
> The strncpy() function is similar, except that not more than n
> bytes of src are copied. Thus, if there is no null byte among the
> first n bytes of src, the result will not be null-terminated.
>
> In the case where the length of src is less than that of n, the
> remainder of dest will be padded with nulls.
More information about the asterisk-dev
mailing list