Package: src:testdisk
Version: 7.2-0.2
Severity: serious
Justification: Policy 12.5 (DFSG copyright & license documentation requirements)

Dear Jean-Michel,

While reviewing testdisk 7.2-1 in the NEW queue, I conducted a DFSG and
copyright audit comparing the upstream source tree against debian/copyright.

The audit revealed several pre-existing discrepancies in debian/copyright
(also present in 7.2-0.2 currently in unstable). Under Debian Policy §12.5,
all copyright notices and distinct license terms must be accurately recorded.

Below is a structured summary of the findings, followed by a proposed
patch updating debian/copyright.

======================================================================
1. License Scope Mismatches (GPL-2 vs GPL-2+)
======================================================================
Several filesystem header files are explicitly licensed under GNU GPL v2
*only* (lacking the "or (at your option) any later version" clause), but
are currently covered under the catch-all GPL-2+ stanza:

- src/refs.h (lines 4-6)
- src/ufs.h (lines 4-6)
- src/xfs.h (lines 4-6)
- src/xfs_struct.h (lines 4-6)
  Header quote:
  "under the terms of version 2 of the GNU General Public License as
   published by the Free Software Foundation."

======================================================================
2. Missing Upstream Authors & Attributions
======================================================================
The following source files contain explicit third-party copyright notices
that are currently omitted from debian/copyright:

| File(s)               | Copyright Holder / Author                     | 
Year(s)     |
|-----------------------|-----------------------------------------------|-------------|
| src/file_bpg.c:6      | Dmitry Brant <[email protected]>             | 
2016        |
| src/file_mkv.c:6      | Nick Schrader <[email protected]>    | 2011  
      |
| src/file_xm.c:6       | Christophe GISQUET <[email protected]> | 
2007      |
| src/file_zip.c:6      | Christophe GISQUET <[email protected]> | 
2007      |
| src/dfxml.c:5         | Simson Garfinkel                              | 2011  
      |
| src/dfxml.h:5         | Simson Garfinkel                              | 2011  
      |
| src/pe.h:3            | Tomasz Kojm <[email protected]>                | 
2004-2005   |
| src/rfs.h:6           | Hans Reiser (ReiserFS v0.91)                  | 
1996-1998   |
| src/hfsp_struct.h:7-9 | Klaus Halfmann <[email protected]>       | 2000  
      |
|                       | Robert Leslie <[email protected]>                  | 
1996-1998   |
|                       | Brad Boyer <[email protected]>                    | 2000  
      |
| src/suspend.c:8       | Michael Cohen <[email protected]>| 2008  
      |
| src/md.h:24           | Ingo Molnar, Gadi Oxman                       | 
1996-1998   |
| src/jfs_superblock.h:4| International Business Machines Corp.         | 
2000-2002   |
| src/lvm.h:9           | Michail Brzitwa <[email protected]> (gpart)   | 
1999-2001   |
| src/memmem.h:6        | Free Software Foundation, Inc. (glibc)        | 
1991-2004   |
| src/ntfs_dir.c:7      | Lode Leroy (Linux-NTFS project)               | 2003  
      |
| src/ntfs_utl.c:7      | Lode Leroy (Linux-NTFS project)               | 2003  
      |
| src/ntfs_io.c:5       | Anton Altaparmakov                            | 
2000-2003   |

======================================================================
3. Incomplete File Lists in Existing Stanzas
======================================================================
- James Holodnak stanza: covers `src/file_fds.c`, but should also include
  `src/file_nes.c` (line 5: Copyright (C) 2013 James Holodnak).
- Peter Turczak stanza: covers `src/file_fh5.c`, but should also include
  `src/file_fh10.c` and `src/file_indd.c` (and the alternate email address
  `<[email protected]>`).
- NTFS stanza: covers `src/ntfs_udl.c` and `src/ntfs_dir.c`, but should
  also include `src/ntfs_utl.c` and `src/ntfs_io.c`.

======================================================================
4. Copyright Year Coverage
======================================================================
The catch-all stanza `Files: *` lists `1998-2018 Christophe Grenier`, whereas
upstream file headers and the `INFO` file show copyright notices through 2024
(`1998-2024 Christophe GRENIER <[email protected]>`).

======================================================================
Proposed Patch (debian/copyright)
======================================================================
Below is the proposed update to debian/copyright to resolve all of the above:

--- a/debian/copyright
+++ b/debian/copyright
@@ -3,48 +3,130 @@
 Source: https://www.cgsecurity.org/
 
 Files: *
-Copyright: 1998-2018 Christophe Grenier <[email protected]>
+Copyright: 1998-2024 Christophe Grenier <[email protected]>
 License: GPL-2+
 
+Files: src/refs.h
+       src/ufs.h
+       src/xfs.h
+       src/xfs_struct.h
+Copyright: 1998-2024 Christophe Grenier <[email protected]>
+License: GPL-2
+
 Files: src/ntfs_udl.c
        src/ntfs_dir.c
-Copyright: 2002-2005 Richard Russon
+       src/ntfs_utl.c
+Copyright: 2004-2008 Christophe Grenier <[email protected]>
+           2002-2005 Richard Russon
            2004-2005 Holger Ohmacht
-           2005 Anton Altaparmakov
+           2003-2005 Anton Altaparmakov
+           2003 Lode Leroy
+License: GPL-2+
+
+Files: src/ntfs_io.c
+Copyright: 2004-2006 Christophe Grenier <[email protected]>
+           2000-2003 Anton Altaparmakov
 License: GPL-2+
 
 Files: src/file_fh5.c
+       src/file_fh10.c
+       src/file_indd.c
 Copyright: 2007 Christophe GRENIER <[email protected]>
            2007 Peter Turczak <[email protected]>
+           2007 Peter Turczak <[email protected]>
 License: GPL-2+
 
 Files: src/file_fds.c
+       src/file_nes.c
 Copyright: 2013 James Holodnak <[email protected]>
 License: GPL-2+
 
+Files: src/file_bpg.c
+Copyright: 1998-2007 Christophe GRENIER <[email protected]>
+           2016 Dmitry Brant <[email protected]>
+License: GPL-2+
+
+Files: src/file_mkv.c
+Copyright: 1998-2011 Christophe GRENIER <[email protected]>
+           2011 Nick Schrader <[email protected]>
+License: GPL-2+
+
 Files: src/file_shp.c
 Copyright: 2023 Grzegorz Szymaszek <[email protected]>
 License: GPL-2+
 
+Files: src/file_xm.c
+       src/file_zip.c
+Copyright: 1998-2009 Christophe GRENIER <[email protected]>
+           2007 Christophe GISQUET <[email protected]>
+License: GPL-2+
+
 Files: src/crc.c
 Copyright: 2007 Christophe GRENIER <[email protected]>
            1986 Gary S. Brown for the crc32 table
 License: GPL-2+
 
+Files: src/dfxml.c
+       src/dfxml.h
+Copyright: 2011 Simson Garfinkel
+           2011 Christophe Grenier <[email protected]>
+License: GPL-2+
+
+Files: src/hfsp_struct.h
+Copyright: 2005-2006 Christophe GRENIER <[email protected]>
+           2000 Klaus Halfmann <[email protected]>
+           1996-1998 Robert Leslie <[email protected]>
+           2000 Brad Boyer <[email protected]>
+License: GPL-2+
+
+Files: src/jfs_superblock.h
+Copyright: 2004 Christophe GRENIER <[email protected]>
+           2000-2002 International Business Machines Corp.
+License: GPL-2+
+
+Files: src/lvm.h
+Copyright: 2003-2008 Christophe GRENIER <[email protected]>
+           1999-2001 Michail Brzitwa <[email protected]>
+License: GPL-2+
+
+Files: src/md.h
+Copyright: 1998-2004 Christophe GRENIER <[email protected]>
+           1996-1998 Ingo Molnar, Gadi Oxman
+License: GPL-2+
+
+Files: src/memmem.h
+Copyright: 2005-2007 Christophe GRENIER <[email protected]>
+           1991, 1992, 1993, 1994, 1996, 1997, 1998, 2000, 2004 Free Software 
Foundation, Inc.
+License: GPL-2+
+
+Files: src/pe.h
+Copyright: 2007 Christophe Grenier <[email protected]>
+           2004-2005 Tomasz Kojm <[email protected]>
+License: GPL-2+
+
+Files: src/rfs.h
+Copyright: 2005-2006 Christophe GRENIER <[email protected]>
+           1996-1998 Hans Reiser
+License: GPL-2+
+
+Files: src/suspend.c
+Copyright: 2009 Christophe GRENIER <[email protected]>
+           2008 Michael Cohen <[email protected]>
+License: GPL-2+
+
 Files: debian/*
 Copyright: 2004-2019 Jean-Michel Kelbert <[email protected]>
 License: GPL-2+
 
+License: GPL-2
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of version 2 of the GNU General Public License as
+ published by the Free Software Foundation.
+ .
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ .
+ On Debian GNU/Linux systems, the complete text of the GNU General
+ Public License version 2 can be found in `/usr/share/common-licenses/GPL-2'.
+
 License: GPL-2+
  This software is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by

regards,
    -rt

Reply via email to