aboutsummaryrefslogtreecommitdiff
Copied from Fedora.

http://pkgs.fedoraproject.org/cgit/unzip.git/plain/unzip-6.0-overflow-long-fsize.patch?id=d18f821e

diff --git a/list.c b/list.c
index f7359c3..4c3d703 100644
--- a/list.c
+++ b/list.c
@@ -97,7 +97,7 @@ int list_files(__G)    /* return PK-type error code */
 {
     int do_this_file=FALSE, cfactor, error, error_in_archive=PK_COOL;
 #ifndef WINDLL
-    char sgn, cfactorstr[10];
+    char sgn, cfactorstr[13];
     int longhdr=(uO.vflag>1);
 #endif
     int date_format;
@@ -339,7 +339,19 @@ int list_files(__G)    /* return PK-type error code */
                 G.crec.compression_method == ENHDEFLATED) {
                 methbuf[5] = dtype[(G.crec.general_purpose_bit_flag>>1) & 3];
             } else if (methnum >= NUM_METHODS) {
-                sprintf(&methbuf[4], "%03u", G.crec.compression_method);
+                /* 2013-02-26 SMS.
+                 * http://sourceforge.net/tracker/?func=detail
+                 *  &aid=2861648&group_id=118012&atid=679786
+                 * Unexpectedly large compression methods overflow
+                 * &methbuf[].  Use the old, three-digit decimal format
+                 * for values which fit.  Otherwise, sacrifice the
+                 * colon, and use four-digit hexadecimal.
+                 */
+                if (G.crec.compression_method <= 999) {
+                    sprintf( &methbuf[ 4], "%03u", G.crec.compression_method);
+                } else {
+                    sprintf( &methbuf[ 3], "%04X", G.crec.compression_method);
+                }
             }
 
 #if 0       /* GRR/Euro:  add this? */
> 2020-10-30gnu: linux-libre: Update to 5.9.2.Leo Famulari * gnu/packages/linux.scm (linux-libre-5.9-version): Update to 5.9.2. (deblob-scripts-5.9, linux-libre-5.9-pristine-source): Update hashes. * gnu/packages/aux-files/linux-libre/5.9-arm.conf, gnu/packages/aux-files/linux-libre/5.9-arm64.conf, gnu/packages/aux-files/linux-libre/5.9-i686.conf, gnu/packages/aux-files/linux-libre/5.9-x86_64.conf: Update kernel configurations for 5.9.2. 2020-10-24gnu: linux-libre: Update to 5.9.1.Leo Famulari * gnu/packages/aux-files/linux-libre/5.8-arm.conf, gnu/packages/aux-files/linux-libre/5.8-arm64.conf, gnu/packages/aux-files/linux-libre/5.8-i686.conf, gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: Delete files. * gnu/packages/aux-files/linux-libre/5.9-arm.conf, gnu/packages/aux-files/linux-libre/5.9-arm64.conf, gnu/packages/aux-files/linux-libre/5.9-i686.conf, gnu/packages/aux-files/linux-libre/5.9-x86_64.conf: New files. * Makefile.am (AUX_FILES): Adjust accordingly. * gnu/packages/linux.scm (linux-libre-5.8-version, deblob-scripts-5.8, linux-libre-5.8-pristine-source, linux-libre-5.8-source, linux-libre-headers-5.8, linux-libre-5.8): Remove variables. (linux-libre-5.9-version, deblob-scripts-5.9, linux-libre-5.9-pristine-source, linux-libre-5.9-source, linux-libre-headers-5.9, linux-libre-5.9): New variables. (linux-libre-version, linux-libre-pristine-source, linux-libre-source, linux-libre): Point to linux-libre-5.9*. (linux-libre-with-bpf): Use linux-libre-5.9. 2020-10-15gnu: linux-libre: Enable XDP sockets and their monitoring.Tobias Geerinckx-Rice via Guix-patches via * gnu/packages/aux-files/linux-libre/4.19-arm.conf: Enable AF_XDP sockets and the associated monitor interface. * gnu/packages/aux-files/linux-libre/4.19-arm64.conf: Likewise * gnu/packages/aux-files/linux-libre/4.19-i686.conf: Likewise * gnu/packages/aux-files/linux-libre/4.19-x86_64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-arm.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-arm64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-i686.conf: Likewise * gnu/packages/aux-files/linux-libre/5.4-x86_64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-arm.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-arm64.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-i686.conf: Likewise * gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: Likewise 2020-08-30gnu: Remove linux-libre 5.7.Leo Famulari The 5.7 kernel series is no longer supported upstream. * gnu/packages/linux.scm (deblob-scripts-5.7, linux-libre-5.7-version, linux-libre-5.7-pristine-source, linux-libre-5.7-source, linux-libre-headers-5.7, linux-libre-5.7) Remove variables. * gnu/packages/aux-files/linux-libre/5.7-arm.conf, gnu/packages/aux-files/linux-libre/5.7-arm64.conf, gnu/packages/aux-files/linux-libre/5.7-i686.conf, gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: Delete files. * Makefile.am (AUX_FILES): Remove them. 2020-08-27linux-libre: Enable module compression for all versions.Mathieu Othacehe This is a follow-up of 5fe12be0dd03d1a316343549f8c131d931f21a9a. It enables module compression for all supported Linux versions. * gnu/packages/aux-files/linux-libre/4.14-arm.conf: Enable GZIP module compression. * gnu/packages/aux-files/linux-libre/4.14-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.14-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-arm.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.19-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.4-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.4-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.9-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/4.9-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-arm.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.4-x86_64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-arm.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: Ditto. 2020-08-25linux-libre: Enable module compression.Mathieu Othacehe This commit enables GZIP compression for linux-libre kernel modules, reducing the size of linux-libre by 63% (165MB). * gnu/packages/aux-files/linux-libre/5.8-arm.conf: Enable GZ compression. * gnu/packages/aux-files/linux-libre/5.8-arm64.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.8-i686.conf: Ditto. * gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: Ditto. 2020-08-21gnu: linux-libre: Update to 5.8.2.Leo Famulari * gnu/packages/aux-files/linux-libre/5.8-arm.conf, gnu/packages/aux-files/linux-libre/5.8-arm64.conf, gnu/packages/aux-files/linux-libre/5.8-i686.conf, gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: New files. * Makefile.am (AUX_FILES): Add them. * gnu/packages/linux.scm (linux-libre-5.8): New variable. (linux-libre-version, linux-libre-pristine-source, linux-libre-source, linux-libre): Point to linux-libre-5.8*. 2020-08-10gnu: linux-libre: Fix typo in the configuration for 5.7 on x86_64.Leo Famulari * gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: Fix typo. 2020-08-05gnu: linux-libre: Update to 5.7.12.Leo Famulari * gnu/packages/aux-files/linux-libre/5.7-arm.conf, gnu/packages/aux-files/linux-libre/5.7-arm64.conf, gnu/packages/aux-files/linux-libre/5.7-i686.conf, gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: New files. * Makefile.am (AUX_FILES): Update accordingly. * gnu/packages/linux.scm: (linux-libre-5.7): New variable. (linux-libre-version, linux-libre-pristine-source) (linux-libre-source, linux-libre): Point to linux-libre-5.7*.