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.