proxmox/proxmox-async
Dominik Csapak e4974b9891 fix #3618: proxmox-async: zip: add conditional EFS flag to zip files
this flag marks the file names as 'UTF-8' encoded if they are valid UTF-8.

By default, encoding of file names in zips are defined as code page 437,
but we save the filenames as bytes (like in linux fs).

For linux systems this would not be a problem since most tools
simply use the filenames as bytes, but for the zip utility under
windows it's important since NTFS uses UTF-16 for file names.

For filenames that are valid UTF-8, they are decoded as UTF-8 everywhere
correctly (Linux as UTF-8 bytes, Windows as correct UTF-16 sequence) and
for other filenames with a high bit set, it depends on the OS/Software
what exactly happens. Some cases below:

* Windows + Built-in/7zip: decoded as CP437
* Debian + zip: Bytes taken as-is
* Debian + 7z: interpreted as Windows1252, decoded as UTF-8

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2022-01-11 06:31:58 +01:00
..
debian async: track d/control 2021-12-30 11:51:08 +01:00
src fix #3618: proxmox-async: zip: add conditional EFS flag to zip files 2022-01-11 06:31:58 +01:00
Cargo.toml use new proxmox-sys 0.2.0 for all crates 2021-11-24 10:00:38 +01:00