Revert zlib.h r1.7
authortb <tb@openbsd.org>
Wed, 20 Jul 2022 11:35:36 +0000 (11:35 +0000)
committertb <tb@openbsd.org>
Wed, 20 Jul 2022 11:35:36 +0000 (11:35 +0000)
The change from uLong to z_off_t was made due to a bug in gzip(1) which
was fixed by gkoehler in gzopen.c r1.35. The trouble with the z_off_t
change is that it is an ABI break and that it does not play well with
various ffi interfaces. For example, Perl and Rust break on ILP32 arches
with the system zlib.

Run through an i386 bulk by sthen and an i386 regress by bluhm, thanks.

ok bluhm

lib/libz/zlib.h

index 1d1b14a..6e342c8 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: zlib.h,v 1.14 2022/05/08 14:04:22 tb Exp $ */
+/*     $OpenBSD: zlib.h,v 1.15 2022/07/20 11:35:36 tb Exp $ */
 
 /* zlib.h -- interface of the 'zlib' general purpose compression library
   version 1.2.12, March 11th, 2022
@@ -88,11 +88,11 @@ struct internal_state;
 typedef struct z_stream_s {
     z_const Bytef *next_in;     /* next input byte */
     uInt     avail_in;  /* number of bytes available at next_in */
-    z_off_t  total_in;  /* total number of input bytes read so far */
+    uLong    total_in;  /* total number of input bytes read so far */
 
     Bytef    *next_out; /* next output byte will go here */
     uInt     avail_out; /* remaining free space at next_out */
-    z_off_t  total_out; /* total number of bytes output so far */
+    uLong    total_out; /* total number of bytes output so far */
 
     z_const char *msg;  /* last error message, NULL if no error */
     struct internal_state FAR *state; /* not visible by applications */