On Wed, Mar 13, 2019 at 9:51 AM Tom Lane <t...@sss.pgh.pa.us> wrote:

> ilm...@ilmari.org (Dagfinn Ilmari =?utf-8?Q?Manns=C3=A5ker?=) writes:
> > [ let's convert
> > +             strlcpy(buf + buflen, name, NAMEDATALEN);
> > +             buflen += strlen(buf + buflen);
> > to
> > +             buflen += strlcpy(buf + buflen, name, NAMEDATALEN);
> > ]
>
> I don't think that's a safe transformation: what strlcpy returns is
> strlen(src), which might be different from what it was actually
> able to fit into the destination.
>
> Sure, they're equivalent if no truncation occurred; but if we were
> 100.00% sure of no truncation, we'd likely not bother with strlcpy.
>

So, if return value < length (3rd argument) we should be able to use the
return value and avoid the strlen, else do the strlen ?

Reply via email to