bug#79184: base32/base64: different behavior of -d with invalid input

Paul Eggert <[email protected]>
Newsgroups gmane.comp.gnu.core-utils.bugs
Organization UCLA Computer Science Department
Message-ID <[email protected]>
On 2025-08-06 09:04, Daniel Hofstetter wrote:
> $ echo 'invalid' | base32 -d 2> /dev/null
> $ echo 'invalid' | base32 -d > /dev/null
> base32: invalid input
> $ echo 'invalid' | base64 -d 2> /dev/null
> �{ږ'$
> $ echo 'invalid' | base64 -d > /dev/null
> base64: invalid input

I don't see a bug here. Both programs convert as much as they can, and 
then stop and diagnose a failure if there is one. base32 can't convert 
anything, so it stops right away. base64 can convert the 'inva' as 
that's valid base64 input, so it outputs the converted data before 
finding the "lid\n" which is invalid.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.