Как zip / unzip обрабатывает символические ссылки в системах Unix?

Я использую QuaZip для сжатия файлов. В библиотеке есть ошибка, когда вы пытаетесь заархивировать некоторые папки, содержащие символические ссылки (псевдонимы на Mac), атрибуты файла не сохраняются в архиве правильно. Есть ли возможность установить атрибут filetype (file, directory, symlink и т. Д.) Через Qt или unix API?
Я видел, что в Qt все флаги обрабатываются через QFile::setPermissions() метод.
Вот в QFileSystemEngine::setPermissions()(Источник Qt) Реализация Qt также обрабатывает другие флаги, отличные от QFile::Permissions,

Из источника Qt:

if (success && data) {
data->entryFlags &= ~QFileSystemMetaData::Permissions;
data->entryFlags |= QFileSystemMetaData::MetaDataFlag(uint(permissions));
data->knownFlagsMask |= QFileSystemMetaData::Permissions;
}

Как эта ситуация решается в утилитах zip / unzip?

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]