[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.BSO.2.20.1604081133500.7610@tp.mkb.name>
Date: Fri, 8 Apr 2016 11:34:00 -0400 (EDT)
From: martin@...ibond.com
To: Mike Marshall <hubcap@...ibond.com>
cc: Andy Shevchenko <andy.shevchenko@...il.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Linux FS Devel <linux-fsdevel@...r.kernel.org>
Subject: Re: [PATCH 2/3] orangefs: strncpy -> strlcpy
> On Thu, Apr 7, 2016 at 2:39 PM, Andy Shevchenko
> <andy.shevchenko@...il.com> wrote:
> > On Mon, Apr 4, 2016 at 11:26 PM, Martin Brandenburg <martin@...ibond.com> wrote:
> >> From: Martin Brandenburg <martin@...ibond.com>
> >>
> >> Almost everywhere we use strncpy we should use strlcpy. This affects
> >> path names (d_name mostly), symlink targets, and server names.
> >>
> >> Leave debugfs code as is for now, though it could use a review as well.
> >>
> >
> > |Why not strscpy() as most robust one?
Mostly because I hadn't heard about strscpy.
On Thu, 7 Apr 2016, Mike Marshall wrote:
> It looks like strscpy went in last October... there are
> no users of it yet. I was just about to send in a pull request
> that includes Martin's strncpy->strlcpy patch when I saw
> Andy's comment.
>
> Linus said when he pulled strscpy:
>
> > So I'm pulling the strscpy() support because it *is* a better interface.
> > But I will refuse to pull mindless conversion patches. Use this in
> > places where it makes sense, but don't do trivial patches to fix things
> > that aren't actually known to be broken.
>
> Maybe it makes sense for our strncpy->strlcpy patch to be a strscpy
> patch instead? Maybe our strncpy->strlcpy patch is itself a
> "mindless conversion patch"? (I don't think so)...
There is something broken! If the client-core sends in a
string with no NUL terminator, we would blindly copy it
into the d_name with strncpy.
>
> I'll wait until tomorrow, and then send my pull request as it is, unless
> everyone chimes in and says "use strscpy!"...
>
> -Mike
After looking over strscpy I don't see a compelling
reason not to go ahead and use it while we're fixing up
this code.
-- Martin
Powered by blists - more mailing lists