[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: bug#29033: [platform-testers] new snapshot available: gzip-1.8.32-46

From: Paul Eggert
Subject: Re: bug#29033: [platform-testers] new snapshot available: gzip-1.8.32-4606
Date: Mon, 6 Nov 2017 23:29:01 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0

Bruno Haible wrote:

+ touch -t 210602070628.15 in
touch: invalid date format '210602070628.15'
+ printf '\037\213\10\0\377\377\377\377\0\377\3\0\0\0\0\0\0\0\0\0'
+ returns_ 2 gzip -Nlv
method  crc     date  time           compressed        uncompressed  ratio 
defla 00000000 Oct 28 00:47                  20                   0   0.0% 
+ fail=1

Instead of suppressing the test, how about if we tell builders not to build with -m32 on platforms supporting 64-bit time_t? That way, they won't run into a problem where gzip mishandles file timestamps due to OS screwups or errno==EOVERFLOW problems that cannot happen with 64-bit time_t. In the not-too-distant future we're going to have to insist on 64-bit time_t anyway, and in the meantime we can strongly suggest 64-bit time_t by installing the first attached patch to gzip (which I've done), by installing the attached proposed patch to Gnulib (which I have not done yet, pending your comments), and by syncing gzip to gnulib.

I think the problem is this comment:
# On platforms that fail to support timestamps within gzip's range,
# test that gzip warns when converting them from gzip format.

Gzip's behaviour depends on libc, and what the 'touch' program is doing
is a different thing. It's incorrect to assume that libc's behaviour and
touch's behaviour are consistent.

The testcase doesn't assume that. It merely assumes that standard utilities support a superset of the timestamps that libc supports. This should be a reasonable assumption for the -m32 case that you describe (and which I'm trying to discourage with the abovementioned patches).

The assumption would not be reasonable for platforms where standard utilities are worse than libc, but this should be uncommon. If it is a problem, perhaps we can get by, by simply telling users to ignore the tests in that case.

CC'ing to bug-gnulib since the 2nd patch is for Gnulib.

Attachment: 0001-misc-diagnose-year-2038-configuration-problems.patch
Description: Text Data

Attachment: 0001-year2038-be-more-insistent-about-64-bit-time_t.patch
Description: Text Data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]