[Cluster-devel] [PATCH] gfs2: move from strlcpy with unused retval to strscpy

Andreas Gruenbacher agruenba at redhat.com
Fri Aug 26 13:28:28 UTC 2022


Wolfram and Andy,

On Thu, Aug 25, 2022 at 11:33 AM Andrew Price <anprice at redhat.com> wrote:
> On 24/08/2022 21:08, Wolfram Sang wrote:
> > Hi Andy.
> >
> >>> -   strlcpy(sdp->sd_proto_name, proto, GFS2_FSNAME_LEN);
> >>> -   strlcpy(sdp->sd_table_name, table, GFS2_FSNAME_LEN);
> >>> +   strscpy(sdp->sd_proto_name, proto, GFS2_FSNAME_LEN);
> >>> +   strscpy(sdp->sd_table_name, table, GFS2_FSNAME_LEN);
> >>
> >> Perhaps the size should be changed to GFS2_LOCKNAME_LEN to match the size of
> >> the destination, too.
> >>
> >> With that addition, this patch fixes this syzkaller report:
> >>
> >> https://listman.redhat.com/archives/cluster-devel/2022-August/022755.html
> >
> > Linus wrote another summary about strlcpy vs. strscpy use[1]. So, the
> > size argument should be the size of the smaller buffer if the buffers
> > are of different size. GFS2_LOCKNAME_LEN is smaller, so that looks
> > suitable. Shall I resend the patch with the suggested change?
>
> Yes, please. I can't speak for the gfs2 maintainers but I think it would
> be a good plan, as the combination of strscpy and the size change fixes
> a bug.

thanks, I've fixed this in for-next now:

https://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git/commit/?h=for-next&id=204c0300c4e99707e9fb6e57840aa1127060e63f

Andreas



More information about the Cluster-devel mailing list