lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 06 Feb 2019 23:17:35 -0800
From:   Joe Perches <joe@...ches.com>
To:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc:     Nishad Kamdar <nishadkamdar@...il.com>, devel@...verdev.osuosl.org,
        Forest Bond <forest@...ttletooquiet.net>,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] staging: vt6656: Use the correct style for SPDX license
 Identifier

On Wed, 2019-02-06 at 17:25 +0100, Greg Kroah-Hartman wrote:
> On Tue, Feb 05, 2019 at 10:59:40AM -0800, Joe Perches wrote:
> > On Tue, 2019-02-05 at 19:44 +0100, Greg Kroah-Hartman wrote:
> > > On Tue, Feb 05, 2019 at 08:36:24PM +0530, Nishad Kamdar wrote:
> > > > This patch corrects the style for SPDX license Identifier in mac.h
> > > > by using "/* */" in place of "//" as per Linux kernel licensing rules.
> > > > Issue found by checkpatch.
> > > > 
> > > > Signed-off-by: Nishad Kamdar <nishadkamdar@...il.com>
> > > > ---
> > > >  drivers/staging/vt6656/mac.h | 4 ++--
> > > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > > 
> > > > diff --git a/drivers/staging/vt6656/mac.h b/drivers/staging/vt6656/mac.h
> > > > index 94e700fcd0b6..75166020f7c6 100644
> > > > --- a/drivers/staging/vt6656/mac.h
> > > > +++ b/drivers/staging/vt6656/mac.h
> > > > @@ -1,5 +1,5 @@
> > > > -// SPDX-License-Identifier: GPL-2.0+
> > > > -/*
> > > > +/* SPDX-License-Identifier: GPL-2.0+
> > > 
> > > Should really be:
> > > 
> > > /* SPDX-License-Identifier: GPL-2.0+ */
> > 
> > There's a fair number of style inconsistencies in the kernel
> > sources for that already.
> > 
> > ~8% of the .h files that have an 'SPDX-License-Identifier:'
> > don't use the recommended style.
> > 
> > $ git grep -h "SPDX-License" -- '*.h' | \
> >   perl -p -e 's@...ntifier:.*\*/*@...ntifier: ... */@; s@...ntifier: [^\.].*@...ntifier:@' | \
> >   sort | uniq -c | sort -rn
> >    8506 /* SPDX-License-Identifier: ... */
> >     593 // SPDX-License-Identifier:
> >     154 /* SPDX-License-Identifier:
> >      53  * SPDX-License-Identifier:
> >       1  * SPDX-License-Identifier:	GPL-2.0
> >       1 //SPDX-License-Identifier:
> >       1 /*  SPDX-License-Identifier: ... */
> 
> Then let's fix them, the documentation says what the correct format is,
> there's no reason we can't actually follow what is written...

So here's a script that does most all of them except
the 50 or so that use the SPDX-License-Identifier
in the middle of a comment block.

Using:

$ git grep --name-only 'SPDX-License-Identifier:' -- '*.h' | \
  xargs grep -L '/\* SPDX-License-Identifier:.*\*/'| \
  while read file ; do perl -i update_spdx.perl $file ; done

produces

$ git diff --shortstat
 748 files changed, 902 insertions(+), 902 deletions(-)

And

$ git grep -h "SPDX-License" -- '*.h' | \
  perl -p -e 's@...ntifier:.*\*/*@...ntifier: ... */@; s@...ntifier: [^\.].*@...ntifier:@' | \
  sort | uniq -c | sort -rn
   9254 /* SPDX-License-Identifier: ... */
     53  * SPDX-License-Identifier:
      1  * SPDX-License-Identifier:	GPL-2.0
      1 /*  SPDX-License-Identifier: ... */

and the perl script below is also attached

$ cat update_spdx.perl
local $/;
my $file = (<>);

my $spdx_regex = '/\*[ \t]*SPDX-License-Identifier:[ \t]*';
my $spdx_actual = '/* SPDX-License-Identifier: ';

# any // use converted to /* ... */
$file =~ s@^//[ \t]*SPDX-License-Identifier:[ \t]*(.*)\n@/* SPDX-License-Identifier: $1 */\n@;

# first line use with /* without trailing */ gets */ added and 2nd line updated
$file =~ m@^\s*${spdx_regex}([^\n]+)\n@;
if (defined $1 && $1 !~ m@\*/$@) {
    $file =~ s@^[ \t]*${spdx_regex}([^\n]+)\n@...pdx_actual}$1 */\n/* @;
    $file =~ s@^[ \t]*${spdx_regex}([^\n]+)\n[ \t]*/\*[ \t]+\*@...pdx_actual}$1\n/* @;
    $file =~ s@^\s*${spdx_regex}([^\n]+)\n/\* \n@...pdx_actual}$1\n/*\n@;
}

print $file;


Download attachment "update_spdx.perl" of type "application/x-perl" (677 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ