Debian Bug report logs - #381348
cpio build glitch breaks Unicode char handling

version graph

Package: cpio; Maintainer for cpio is Anibal Monsalve Salazar <anibal@debian.org>; Source for cpio is src:cpio.

Reported by: Jeff Licquia <licquia@debian.org>

Date: Thu, 3 Aug 2006 21:03:05 UTC

Severity: serious

Found in version cpio/2.6-16

Fixed in version cpio/2.6-17

Done: Clint Adams <schizo@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Clint Adams <schizo@debian.org>:
Bug#381348; Package cpio. Full text and rfc822 format available.

Acknowledgement sent to Jeff Licquia <licquia@debian.org>:
New Bug report received and forwarded. Copy sent to Clint Adams <schizo@debian.org>. Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Jeff Licquia <licquia@debian.org>
To: submit@bugs.debian.org
Subject: cpio build glitch breaks Unicode char handling
Date: Thu, 03 Aug 2006 16:20:10 -0400
Package: cpio
Version: 2.6-16
Severity: important

A recent LSB 3.1 runtime test journal reports, among other things:

200|700 5 18:36:15|TP Start
520|700 5 23550 1 1|* When -i option is specified, if extract files is selected
in pattern form, '?' is matched 1 file-system-safe characters.
520|700 5 23550 1 2|
520|700 5 23550 1 3|The archive file doesn't preserve file contents.
220|700 5 1 18:36:15|FAIL
200|700 6 18:36:15|TP Start
520|700 6 23550 1 1|* When -i option is specified, if extract files is selected
in pattern form, matching list expression '[...]' is matched any one of the enclosed file-system-safe characters.
520|700 6 23550 1 2|
520|700 6 23550 1 3|The archive file doesn't preserve file contents.
220|700 6 1 18:36:16|FAIL
200|700 7 18:36:16|TP Start
520|700 7 23550 1 1|* When -i option is specified, if extract files is selected
in pattern form, a range expression '[c-c]' is matched any symbol between the pair (inclusive). The range expression may not be matched multi-character collating element and the range expression can be based on code point order instead of collating element order.
520|700 7 23550 1 2|
520|700 7 23550 1 3|The archive file doesn't preserve file contents.
220|700 7 1 18:36:16|FAIL

The tests check that various Unicode characters in file names can be
extracted properly when referenced via globs.  cpio 2.5 from sarge (and
most other distros) passes these tests, while cpio from Fedora Core 5 is
also known to fail these tests.

The problem turns out to be in the build system.  As you may be aware,
part of the cpio source actually lives in the "paxutils" project on
Savannah, and on occasion cpio and paxutils can get a little out of
sync.

At some point, paxutils started using more than one m4 file for its
autoconf-age, and one of the new files use AC_CHECK_FUNCS_ONCE to look
for the setlocale function.  However, cpio did not pick up on this
change, and did not include the new m4 file.  This meant that
HAVE_SETLOCALE was not being set in cpio's config.h.

The header file lib/system.h in cpio comes from paxutils, and includes
the following code:

#if !HAVE_SETLOCALE
# define setlocale(category, locale) /* empty */
#endif

Thus, even though Debian has a proper setlocale(), the call to that
function in cpio was removed.

There are a few ways to fix it:

 - Include AC_CHECK_FUNCS_ONCE(setlocale) directly in configure.ac, and
regenerate configure and config.h.in.

 - #define HAVE_SETLOCALE 1 in lib/system.h.

 - Remove the three lines starting with "#if !HAVE_SETLOCALE" from
lib/system.h.

I can confirm that the last of those solutions works, in that the cpio
2.6-16 package plus that change compiles, installs, and passes the LSB
tests that it failed before.

All of this was discovered by examining cpio CVS, which has since fixed
the problem with the build system, and which passes the tests.  Fixing
the build system the way it was done upstream would probably generate a
much larger change, since it would also incorporate irrelevant changes
in paxutils and cpio.

Severity set to "important" because this is a show-stopper for LSB
certification.  I will let the release managers decide whether this
merits a release-critical priority.




Severity set to `serious' from `important' Request was from Clint Adams <schizo@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Reply sent to Clint Adams <schizo@debian.org>:
You have taken responsibility. Full text and rfc822 format available.

Notification sent to Jeff Licquia <licquia@debian.org>:
Bug acknowledged by developer. Full text and rfc822 format available.

Message #12 received at 381348-close@bugs.debian.org (full text, mbox):

From: Clint Adams <schizo@debian.org>
To: 381348-close@bugs.debian.org
Subject: Bug#381348: fixed in cpio 2.6-17
Date: Fri, 04 Aug 2006 09:02:09 -0700
Source: cpio
Source-Version: 2.6-17

We believe that the bug you reported is fixed in the latest version of
cpio, which is due to be installed in the Debian FTP archive:

cpio_2.6-17.diff.gz
  to pool/main/c/cpio/cpio_2.6-17.diff.gz
cpio_2.6-17.dsc
  to pool/main/c/cpio/cpio_2.6-17.dsc
cpio_2.6-17_sparc.deb
  to pool/main/c/cpio/cpio_2.6-17_sparc.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 381348@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Clint Adams <schizo@debian.org> (supplier of updated cpio package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Fri,  4 Aug 2006 09:45:10 -0400
Source: cpio
Binary: cpio
Architecture: source sparc
Version: 2.6-17
Distribution: unstable
Urgency: high
Maintainer: Clint Adams <schizo@debian.org>
Changed-By: Clint Adams <schizo@debian.org>
Description: 
 cpio       - GNU cpio -- a program to manage archives of files
Closes: 381348
Changes: 
 cpio (2.6-17) unstable; urgency=high
 .
   * Fix setlocale glitch.  closes: #381348.
Files: 
 af13b4d33c7d188ad5561e2f2048768a 558 utils important cpio_2.6-17.dsc
 3bc71f7dd3096cf1ee59a77e170be4c5 456855 utils important cpio_2.6-17.diff.gz
 527f1f9af3d83366ee3920d7dfdc5186 131134 utils important cpio_2.6-17_sparc.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: Debian!

iD8DBQFE020/5m0u66uWM3ARAolvAJ95QlCRr4K/sAVf4PRtmWGMfllSZACfXO6g
MitXyP0tFMeN488DO4+05o8=
=Akod
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Mon, 25 Jun 2007 12:52:17 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed Apr 23 14:46:16 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.