public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
From: Adolf Belka <adolf.belka@ipfire.org>
To: development@lists.ipfire.org
Subject: Re: [PATCH] gzip: update to 1.10
Date: Thu, 03 Jun 2021 14:27:11 +0200	[thread overview]
Message-ID: <7cf3fd03-8c73-c20a-cc21-4cc7d381624a@ipfire.org> (raw)
In-Reply-To: <2217ac6a-ba2c-9e04-59fd-311fdd6c69cb@ipfire.org>

[-- Attachment #1: Type: text/plain, Size: 11395 bytes --]

Reviewed-by Adolf Belka <adolf.belka(a)ipfire.org>

On 02/06/2021 19:53, Peter Müller wrote:
> Relevant excerpt from Changelog as per
> https://savannah.gnu.org/forum/forum.php?forum_id=9339:
>
> NEWS
>
> * Noteworthy changes in release 1.10 (2018-12-29) [stable]
>
> ** Changes in behavior
>
>    Compressed gzip output no longer contains the current time as a
>    timestamp when the input is not a regular file.  Instead, the output
>    contains a null (zero) timestamp.  This makes gzip's behavior more
>    reproducible when used as part of a pipeline.  (As a reminder, even
>    regular files will use null timestamps after the year 2106, due to a
>    limitation in the gzip format.)
>
> ** Bug fixes
>
>    A use of uninitialized memory on some malformed inputs has been fixed.
>    [bug present since the beginning]
>
>    A few theoretical race conditions in signal handers have been fixed.
>    These bugs most likely do not happen on practical platforms.
>    [bugs present since the beginning]
>
> In addition, gzip 1.10 comes with the GNU library patch applied, so
> there is no need to carry this file around any more.
>
> Signed-off-by: Peter Müller <peter.mueller(a)ipfire.org>
> ---
>   lfs/gzip                          |   7 +-
>   src/patches/gzip-1.9-gnulib.patch | 189 ------------------------------
>   2 files changed, 3 insertions(+), 193 deletions(-)
>   delete mode 100644 src/patches/gzip-1.9-gnulib.patch
>
> diff --git a/lfs/gzip b/lfs/gzip
> index eeea99dbe..ae8bee05f 100644
> --- a/lfs/gzip
> +++ b/lfs/gzip
> @@ -1,7 +1,7 @@
>   ###############################################################################
>   #                                                                             #
>   # IPFire.org - A linux based firewall                                         #
> -# Copyright (C) 2007-2018  IPFire Team  <info(a)ipfire.org>                     #
> +# Copyright (C) 2007-2021  IPFire Team  <info(a)ipfire.org>                     #
>   #                                                                             #
>   # This program is free software: you can redistribute it and/or modify        #
>   # it under the terms of the GNU General Public License as published by        #
> @@ -24,7 +24,7 @@
>   
>   include Config
>   
> -VER        = 1.9
> +VER        = 1.10
>   
>   THISAPP    = gzip-$(VER)
>   DL_FILE    = $(THISAPP).tar.xz
> @@ -54,7 +54,7 @@ objects = $(DL_FILE)
>   
>   $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>   
> -$(DL_FILE)_MD5 = 9492c6ccb2239ff679a5475a7bb543ed
> +$(DL_FILE)_MD5 = 691b1221694c3394f1c537df4eee39d3
>   
>   install : $(TARGET)
>   
> @@ -84,7 +84,6 @@ $(subst %,%_MD5,$(objects)) :
>   $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>   	@$(PREBUILD)
>   	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gzip-1.9-gnulib.patch
>   	cd $(DIR_APP) && ./configure $(EXTRA_CONFIG)
>   	cd $(DIR_APP) && make $(MAKETUNING)
>   	cd $(DIR_APP) && make install
> diff --git a/src/patches/gzip-1.9-gnulib.patch b/src/patches/gzip-1.9-gnulib.patch
> deleted file mode 100644
> index 68e8d518a..000000000
> --- a/src/patches/gzip-1.9-gnulib.patch
> +++ /dev/null
> @@ -1,189 +0,0 @@
> -From 1831628c0630ae96a43586b2a25ca51cbdba3e53 Mon Sep 17 00:00:00 2001
> -From: Paul Eggert <address(a)hidden>
> -Date: Mon, 5 Mar 2018 10:56:29 -0800
> -Subject: [PATCH] fflush: adjust to glibc 2.28 libio.h removal
> -MIME-Version: 1.0
> -Content-Type: text/plain; charset=UTF-8
> -Content-Transfer-Encoding: 8bit
> -
> -Problem reported by Daniel P. Berrangé in:
> -https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html
> -* lib/fbufmode.c (fbufmode):
> -* lib/fflush.c (clear_ungetc_buffer_preserving_position)
> -(disable_seek_optimization, rpl_fflush):
> -* lib/fpending.c (__fpending):
> -* lib/fpurge.c (fpurge):
> -* lib/freadable.c (freadable):
> -* lib/freadahead.c (freadahead):
> -* lib/freading.c (freading):
> -* lib/freadptr.c (freadptr):
> -* lib/freadseek.c (freadptrinc):
> -* lib/fseeko.c (fseeko):
> -* lib/fseterr.c (fseterr):
> -* lib/fwritable.c (fwritable):
> -* lib/fwriting.c (fwriting):
> -Check _IO_EOF_SEEN instead of _IO_ftrylockfile.
> -* lib/stdio-impl.h (_IO_IN_BACKUP) [_IO_EOF_SEEN]:
> -Define if not already defined.
> ----
> - ChangeLog        | 23 +++++++++++++++++++++++
> - lib/fbufmode.c   |  2 +-
> - lib/fflush.c     |  6 +++---
> - lib/fpending.c   |  2 +-
> - lib/fpurge.c     |  2 +-
> - lib/freadable.c  |  2 +-
> - lib/freadahead.c |  2 +-
> - lib/freading.c   |  2 +-
> - lib/freadptr.c   |  2 +-
> - lib/freadseek.c  |  2 +-
> - lib/fseeko.c     |  4 ++--
> - lib/fseterr.c    |  2 +-
> - lib/fwritable.c  |  2 +-
> - lib/fwriting.c   |  2 +-
> - lib/stdio-impl.h |  6 ++++++
> - 15 files changed, 45 insertions(+), 16 deletions(-)
> -
> -diff --git a/ChangeLog b/ChangeLog
> -index 667f91663..beb835670 100644
> ---- a/ChangeLog
> -+++ b/ChangeLog
> -@@ -1,3 +1,26 @@
> -+2018-03-05  Paul Eggert  <address(a)hidden>
> -+
> -+	fflush: adjust to glibc 2.28 libio.h removal
> -+	Problem reported by Daniel P. Berrangé in:
> -+	https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html
> -+	* lib/fbufmode.c (fbufmode):
> -+	* lib/fflush.c (clear_ungetc_buffer_preserving_position)
> -+	(disable_seek_optimization, rpl_fflush):
> -+	* lib/fpending.c (__fpending):
> -+	* lib/fpurge.c (fpurge):
> -+	* lib/freadable.c (freadable):
> -+	* lib/freadahead.c (freadahead):
> -+	* lib/freading.c (freading):
> -+	* lib/freadptr.c (freadptr):
> -+	* lib/freadseek.c (freadptrinc):
> -+	* lib/fseeko.c (fseeko):
> -+	* lib/fseterr.c (fseterr):
> -+	* lib/fwritable.c (fwritable):
> -+	* lib/fwriting.c (fwriting):
> -+	Check _IO_EOF_SEEN instead of _IO_ftrylockfile.
> -+	* lib/stdio-impl.h (_IO_IN_BACKUP) [_IO_EOF_SEEN]:
> -+	Define if not already defined.
> -+
> - 2018-01-07  Jim Meyering  <meyering(a)fb.com>
> -
> - 	version 1.9
> - 	* NEWS: Record release date.
> -diff --git a/lib/fflush.c b/lib/fflush.c
> -index 983ade0ff..a6edfa105 100644
> ---- a/lib/fflush.c
> -+++ b/lib/fflush.c
> -@@ -33,7 +33,7 @@
> - #undef fflush
> -
> -
> --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -
> - /* Clear the stream's ungetc buffer, preserving the value of ftello (fp).  */
> - static void
> -@@ -72,7 +72,7 @@ clear_ungetc_buffer (FILE *fp)
> -
> - #endif
> -
> --#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
> -+#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */)
> -
> - # if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT
> - /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
> -@@ -148,7 +148,7 @@ rpl_fflush (FILE *stream)
> -   if (stream == NULL || ! freading (stream))
> -     return fflush (stream);
> -
> --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -
> -   clear_ungetc_buffer_preserving_position (stream);
> -
> -diff --git a/lib/fpurge.c b/lib/fpurge.c
> -index b1d417c7a..3aedcc373 100644
> ---- a/lib/fpurge.c
> -+++ b/lib/fpurge.c
> -@@ -62,7 +62,7 @@ fpurge (FILE *fp)
> -   /* Most systems provide FILE as a struct and the necessary bitmask in
> -      <stdio.h>, because they need it for implementing getc() and putc() as
> -      fast macros.  */
> --# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -   fp->_IO_read_end = fp->_IO_read_ptr;
> -   fp->_IO_write_ptr = fp->_IO_write_base;
> -   /* Avoid memory leak when there is an active ungetc buffer.  */
> -diff --git a/lib/freading.c b/lib/freading.c
> -index 73c28acdd..c24d0c88a 100644
> ---- a/lib/freading.c
> -+++ b/lib/freading.c
> -@@ -31,7 +31,7 @@ freading (FILE *fp)
> -   /* Most systems provide FILE as a struct and the necessary bitmask in
> -      <stdio.h>, because they need it for implementing getc() and putc() as
> -      fast macros.  */
> --# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -   return ((fp->_flags & _IO_NO_WRITES) != 0
> -           || ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0
> -               && fp->_IO_read_base != NULL));
> -diff --git a/lib/fseeko.c b/lib/fseeko.c
> -index 0101ab55f..193f4e8ce 100644
> ---- a/lib/fseeko.c
> -+++ b/lib/fseeko.c
> -@@ -47,7 +47,7 @@ fseeko (FILE *fp, off_t offset, int whence)
> - #endif
> -
> -   /* These tests are based on fpurge.c.  */
> --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -   if (fp->_IO_read_end == fp->_IO_read_ptr
> -       && fp->_IO_write_ptr == fp->_IO_write_base
> -       && fp->_IO_save_base == NULL)
> -@@ -123,7 +123,7 @@ fseeko (FILE *fp, off_t offset, int whence)
> -           return -1;
> -         }
> -
> --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -       fp->_flags &= ~_IO_EOF_SEEN;
> -       fp->_offset = pos;
> - #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
> -diff --git a/lib/fseterr.c b/lib/fseterr.c
> -index 82649c3ac..adb637256 100644
> ---- a/lib/fseterr.c
> -+++ b/lib/fseterr.c
> -@@ -29,7 +29,7 @@ fseterr (FILE *fp)
> -   /* Most systems provide FILE as a struct and the necessary bitmask in
> -      <stdio.h>, because they need it for implementing getc() and putc() as
> -      fast macros.  */
> --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
> -   fp->_flags |= _IO_ERR_SEEN;
> - #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
> -   /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */
> -diff --git a/lib/stdio-impl.h b/lib/stdio-impl.h
> -index 78d896e9f..05c5752a2 100644
> ---- a/lib/stdio-impl.h
> -+++ b/lib/stdio-impl.h
> -@@ -18,6 +18,12 @@
> -    the same implementation of stdio extension API, except that some fields
> -    have different naming conventions, or their access requires some casts.  */
> -
> -+/* Glibc 2.28 made _IO_IN_BACKUP private.  For now, work around this
> -+   problem by defining it ourselves.  FIXME: Do not rely on glibc
> -+   internals.  */
> -+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
> -+# define _IO_IN_BACKUP 0x100
> -+#endif
> -
> - /* BSD stdio derived implementations.  */
> -
> ---
> -2.14.3
> -

      reply	other threads:[~2021-06-03 12:27 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-02 17:53 Peter Müller
2021-06-03 12:27 ` Adolf Belka [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7cf3fd03-8c73-c20a-cc21-4cc7d381624a@ipfire.org \
    --to=adolf.belka@ipfire.org \
    --cc=development@lists.ipfire.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox