gpgtar: Windows decrypting a gpgtar archive with 8bit filename leads to wrong name
Open, NormalPublic

Description

Noticed during release test. I think gpgtar is the issue here but I can't reproduce it on the command line as I can't pass utf8 on windows through the console, and my naive try to use "gpgtar --utf8-strings --extract -T filename.txt"
with filename.txt containing the filename utf8-encoded just shows the usage string.

To test create a folder with an umlaut, encrypt it with kleopatra. Then decrypt it. It works but it will have an invalid character in the folder name instead of the umlaut.

As the file is correctly decrypted I think the issue is with gpgtar which creates the output folder

aheinecke created this task.Fri, Jan 8, 5:18 PM
werner added a comment.Fri, Jan 8, 8:06 PM

I can't replicate this on the command line. Anyway option -T is only valid with --create. Further the archive format is specified to carry utf8 filenames; thus --utf8-strings won't have an effect on --extract. Are you sure that Kleopatra runs

gpgtar --create --utf-strings -T -

and you pass utf-8 encoded filenames on stdin?

The problem is not with creation, that works. The problem is also not with files contained in the archive, they also work. The problem is the archive name. And that also seems to be correct in the way gpgtar extracts it as gpgtar successfully extracts the archive, but the created folder name has the broken character.

We discussed this, the proper solution will be for gpgtar to accept unicode arguments on windows.

For now as a crutch to make this problem less severe kleopatra replaces any non 7 bit character in the archive name by an underscore.