pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/devel/zlib
Module Name: pkgsrc
Committed By: jperkin
Date: Fri May 13 07:34:20 UTC 2022
Modified Files:
pkgsrc/devel/zlib: Makefile
pkgsrc/devel/zlib/files: crc32.c
Log Message:
zlib: Apply upstream patch to workaround CRC issue.
Should fix abuse by openjdk and others. Bump PKGREVISION.
Upstream commit:
From ec3df00224d4b396e2ac6586ab5d25f673caa4c2 Mon Sep 17 00:00:00 2001
From: Mark Adler <madler%alumni.caltech.edu@localhost>
Date: Wed, 30 Mar 2022 11:14:53 -0700
Subject: [PATCH] Correct incorrect inputs provided to the CRC functions.
The previous releases of zlib were not sensitive to incorrect CRC
inputs with bits set above the low 32. This commit restores that
behavior, so that applications with such bugs will continue to
operate as before.
To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.59 pkgsrc/devel/zlib/Makefile
cvs rdiff -u -r1.5 -r1.6 pkgsrc/devel/zlib/files/crc32.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/devel/zlib/Makefile
diff -u pkgsrc/devel/zlib/Makefile:1.58 pkgsrc/devel/zlib/Makefile:1.59
--- pkgsrc/devel/zlib/Makefile:1.58 Tue Mar 29 22:09:41 2022
+++ pkgsrc/devel/zlib/Makefile Fri May 13 07:34:20 2022
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile,v 1.58 2022/03/29 22:09:41 wiz Exp $
+# $NetBSD: Makefile,v 1.59 2022/05/13 07:34:20 jperkin Exp $
DISTNAME= zlib-1.2.12
+PKGREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=libpng/}
MASTER_SITES+= http://zlib.net/
Index: pkgsrc/devel/zlib/files/crc32.c
diff -u pkgsrc/devel/zlib/files/crc32.c:1.5 pkgsrc/devel/zlib/files/crc32.c:1.6
--- pkgsrc/devel/zlib/files/crc32.c:1.5 Tue Mar 29 22:09:41 2022
+++ pkgsrc/devel/zlib/files/crc32.c Fri May 13 07:34:20 2022
@@ -7,7 +7,7 @@
* Kadatch and Jenkins (2010). See doc/crc-doc.1.0.pdf in this distribution.
*/
-/* @(#) $Id: crc32.c,v 1.5 2022/03/29 22:09:41 wiz Exp $ */
+/* @(#) $Id: crc32.c,v 1.6 2022/05/13 07:34:20 jperkin Exp $ */
/*
Note on the use of DYNAMIC_CRC_TABLE: there is no mutex or semaphore
@@ -630,7 +630,7 @@ unsigned long ZEXPORT crc32_z(crc, buf,
#endif /* DYNAMIC_CRC_TABLE */
/* Pre-condition the CRC */
- crc ^= 0xffffffff;
+ crc = (~crc) & 0xffffffff;
/* Compute the CRC up to a word boundary. */
while (len && ((z_size_t)buf & 7) != 0) {
@@ -749,7 +749,7 @@ unsigned long ZEXPORT crc32_z(crc, buf,
#endif /* DYNAMIC_CRC_TABLE */
/* Pre-condition the CRC */
- crc ^= 0xffffffff;
+ crc = (~crc) & 0xffffffff;
#ifdef W
@@ -1077,7 +1077,7 @@ uLong ZEXPORT crc32_combine64(crc1, crc2
#ifdef DYNAMIC_CRC_TABLE
once(&made, make_crc_table);
#endif /* DYNAMIC_CRC_TABLE */
- return multmodp(x2nmodp(len2, 3), crc1) ^ crc2;
+ return multmodp(x2nmodp(len2, 3), crc1) ^ (crc2 & 0xffffffff);
}
/* ========================================================================= */
@@ -1112,5 +1112,5 @@ uLong crc32_combine_op(crc1, crc2, op)
uLong crc2;
uLong op;
{
- return multmodp(op, crc1) ^ crc2;
+ return multmodp(op, crc1) ^ (crc2 & 0xffffffff);
}
Home |
Main Index |
Thread Index |
Old Index