GNU bug report logs -
#75911
maint: fix s390 buffer flushes
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 75911 in the body.
You can then email your comments to 75911 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gzip <at> gnu.org
:
bug#75911
; Package
gzip
.
(Tue, 28 Jan 2025 14:38:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Eduard Stefes <eduard.stefes <at> ibm.com>
:
New bug report received and forwarded. Copy sent to
bug-gzip <at> gnu.org
.
(Tue, 28 Jan 2025 14:38:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Problem reported by Nick Rosbrook in:
https://bugs.launchpad.net/ubuntu/+source/rsyslog/+bug/2083700
align the behavior of dfltcc_inflate to do the same as gzip_inflate
when it hits a premature EOF
---
dfltcc.c | 7 ++++++-
tests/hufts | 6 ++++--
2 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/dfltcc.c b/dfltcc.c
index 811c1f8..07726cb 100644
--- a/dfltcc.c
+++ b/dfltcc.c
@@ -18,6 +18,7 @@
#include <config.h>
#include <stdlib.h>
+#include <errno.h>
#ifdef HAVE_SYS_SDT_H
# include <sys/sdt.h>
@@ -437,7 +438,11 @@ dfltcc_inflate ()
if (fill_inbuf (1) == EOF)
{
/* Premature EOF. */
- return 2;
+ flush_outbuf();
+ errno = 0;
+ read_error();
+ /* Premature EOF. */
+ __builtin_unreachable();
}
inptr = 0;
}
diff --git a/tests/hufts b/tests/hufts
index c464ef6..6dbb8ac 100755
--- a/tests/hufts
+++ b/tests/hufts
@@ -40,10 +40,12 @@ compare exp err || fail=1
printf '\037\213\010\000\060\060\060\060\060\060\144\000\000\000' > bug33501 \
|| framework_failure_
-printf '\ngzip: stdin: invalid compressed data--format violated\n' >exp33501 \
+printf '\ngzip: stdin: invalid compressed data--format violated\n' > exp33501.1 \
+ || framework_failure_
+printf '\ngzip: stdin: unexpected end of file\n' > exp33501.2 \
|| framework_failure_
returns_ 1 gzip -d <bug33501 >out33501 2> err33501-raw || fail=1
sed "$clean_stderr" err33501-raw > err33501 || framework_failure_
-compare exp33501 err33501 || fail=1
+compare exp33501.1 err33501 || compare exp33501.2 err33501 || fail=1
Exit $fail
--
2.48.0
Information forwarded
to
bug-gzip <at> gnu.org
:
bug#75911
; Package
gzip
.
(Tue, 28 Jan 2025 14:45:02 GMT)
Full text and
rfc822 format available.
Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):
On Tue, 2025-01-28 at 15:37 +0100, Eduard Stefes wrote:
LGTM, but I have several stylistic comments.
> Problem reported by Nick Rosbrook in:
> https://bugs.launchpad.net/ubuntu/+source/rsyslog/+bug/2083700
>
> align the behavior of dfltcc_inflate to do the same as gzip_inflate
> when it hits a premature EOF
Looking at the style of other gzip commits:
I would capitalize "Align" and add a dot at the end.
> ---
> dfltcc.c | 7 ++++++-
> tests/hufts | 6 ++++--
> 2 files changed, 10 insertions(+), 3 deletions(-)
> diff --git a/dfltcc.c b/dfltcc.c
> index 811c1f8..07726cb 100644
> --- a/dfltcc.c
> +++ b/dfltcc.c
> @@ -18,6 +18,7 @@
> #include <config.h>
>
> #include <stdlib.h>
> +#include <errno.h>
>
> #ifdef HAVE_SYS_SDT_H
> # include <sys/sdt.h>
> @@ -437,7 +438,11 @@ dfltcc_inflate ()
> if (fill_inbuf (1) == EOF)
> {
> /* Premature EOF. */
> - return 2;
> + flush_outbuf();
Here and below: there should be a space before ().
> + errno = 0;
> + read_error();
> + /* Premature EOF. */
Duplicate comment, I would drop this copy.
> + __builtin_unreachable();
> }
> inptr = 0;
> }
[...]
Best regards,
Ilya
Information forwarded
to
bug-gzip <at> gnu.org
:
bug#75911
; Package
gzip
.
(Wed, 29 Jan 2025 14:18:02 GMT)
Full text and
rfc822 format available.
Message #11 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi,
Thx for the review. I'll resend with the corrections.
On Tue, 2025-01-28 at 15:44 +0100, Ilya Leoshkevich wrote:
> On Tue, 2025-01-28 at 15:37 +0100, Eduard Stefes wrote:
>
> LGTM, but I have several stylistic comments.
>
> > Problem reported by Nick Rosbrook in:
> > https://bugs.launchpad.net/ubuntu/+source/rsyslog/+bug/2083700
> >
> > align the behavior of dfltcc_inflate to do the same as gzip_inflate
> > when it hits a premature EOF
>
> Looking at the style of other gzip commits:
> I would capitalize "Align" and add a dot at the end.
>
> > ---
> > dfltcc.c | 7 ++++++-
> > tests/hufts | 6 ++++--
> > 2 files changed, 10 insertions(+), 3 deletions(-)
>
>
> > diff --git a/dfltcc.c b/dfltcc.c
> > index 811c1f8..07726cb 100644
> > --- a/dfltcc.c
> > +++ b/dfltcc.c
> > @@ -18,6 +18,7 @@
> > #include <config.h>
> >
> > #include <stdlib.h>
> > +#include <errno.h>
> >
> > #ifdef HAVE_SYS_SDT_H
> > # include <sys/sdt.h>
> > @@ -437,7 +438,11 @@ dfltcc_inflate ()
> > if (fill_inbuf (1) == EOF)
> > {
> > /* Premature EOF. */
> > - return 2;
> > + flush_outbuf();
>
> Here and below: there should be a space before ().
>
> > + errno = 0;
> > + read_error();
> > + /* Premature EOF. */
>
> Duplicate comment, I would drop this copy.
>
> > + __builtin_unreachable();
> > }
> > inptr = 0;
> > }
>
> [...]
>
> Best regards,
> Ilya
--
Eduard Stefes <Eduard.Stefes <at> ibm.com>
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 07 May 2025 11:24:09 GMT)
Full text and
rfc822 format available.
This bug report was last modified 39 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.