Re: [PATCH v2] drivers/edac/edac_mc: Remove all strcpy() uses

From: Robert Richter
Date: Mon Aug 02 2021 - 05:52:13 EST


On 02.08.21 11:19:33, Robert Richter wrote:
> On 01.08.21 16:35:58, Len Baker wrote:
>
> > @@ -1114,10 +1116,12 @@ void edac_mc_handle_error(const enum hw_event_mc_err_type type,
> > *p = '\0';
> > } else {
> > if (p != e->label) {
> > - strcpy(p, OTHER_LABEL);
> > + strscpy(p, OTHER_LABEL, left);
> > + left -= strlen(OTHER_LABEL);

Another note: Other parts of the code use 'len' instead of 'left', so
if you could change that too?

Thanks,

-Robert

> > p += strlen(OTHER_LABEL);
>
> Those both must be strlen(p) now as otherwise 'left' could underflow
> (and p overflow).
>
> -Robert
>
> > }
> > - strcpy(p, dimm->label);
> > + strscpy(p, dimm->label, left);
> > + left -= strlen(p);
> > p += strlen(p);
> > }
> >