GNU bug report logs - #5996
[PATCH] base64: always treat input in binary mode

Previous Next

Package: coreutils;

Reported by: Eric Blake <eblake <at> redhat.com>

Date: Wed, 21 Apr 2010 14:24:02 UTC

Severity: normal

Tags: patch

Merged with 5994

Done: Jim Meyering <jim <at> meyering.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Jim Meyering <jim <at> meyering.net>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#5994: closed (base64: I/O should be performed in binary-mode)
Date: Thu, 22 Apr 2010 17:53:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Thu, 22 Apr 2010 19:52:14 +0200
with message-id <87iq7j5q9d.fsf <at> meyering.net>
and subject line Re: bug#5996: [PATCH] base64: always treat input in binary mode
has caused the GNU bug report #5996,
regarding base64: I/O should be performed in binary-mode
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
5996: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=5996
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Yutaka Amanai <yasai-itame1942 <at> jade.plala.or.jp>
To: bug-coreutils <at> gnu.org
Subject: base64: I/O should be performed in binary-mode
Date: Wed, 21 Apr 2010 18:46:23 +0900
base64 doesn't call freopen() nor setmode() against stdin, and doesn't
give "rb" flag to fopen(). So, base64 sometimes fails to encode data
correctly on some environment. For example, zsh on Cygwin forces stdin
to be text-mode.

Test case (zsh on Cygwin, filesystems are mounted as binary-mode):
$ printf '\x0D\x0A' > crlf-src
$ base64 < crlf-src | base64 -d > crlf-dst
$ cmp crlf-src crlf-dst
crlf-src crlf-dst differ: char 1, line 1



[Message part 3 (message/rfc822, inline)]
From: Jim Meyering <jim <at> meyering.net>
To: Eric Blake <eblake <at> redhat.com>
Cc: 5996-done <at> debbugs.gnu.org
Subject: Re: bug#5996: [PATCH] base64: always treat input in binary mode
Date: Thu, 22 Apr 2010 19:52:14 +0200
Eric Blake wrote:
> On 04/22/2010 11:00 AM, Glenn Morris wrote:
>>
>> Hi,
>>
>> The following message got resent to bug-gnu-emacs rather than
>> bug-coreutils, because debbugs got confused.
>
> Well, my screw-up with To: fields means that my planned review period
> was delayed...
>
>>> Thanks for the report.  I'll commit this later today if there are no
>>> objections; it should have no impact for any platform that does not
>>> have O_BINARY, and although it is not perfect on Cygwin, it is not
>>> too much to add to my workload for creating the cygwin port of coreutils
>>> 8.5.  And someday I'll get around to creating the new gnulib interface
>>> for gracefully enforcing binary streams without clobbering O_APPEND.
>
> But I'd still like to commit this in time for coreutils 8.5 later today
> if there are no complaints.

That patch looks fine.
You're welcome to push it.  Thanks!


This bug report was last modified 15 years and 34 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.