#[repr(u16)]
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[allow(unused)]
#[non_exhaustive]
pub enum ExtraFieldId {
Zip64ExtendedInfo = 0x0001,
AvInfo = 0x0007,
ReservedExtendedLanguageEncoding = 0x0008,
Os2 = 0x0009,
Ntfs = 0x000a,
OpenVms = 0x000c,
Unix = 0x000d,
ReservedFileStreamAndForkDescriptors = 0x000e,
PatchDescriptor = 0x000f,
Pkcs7StoreForX509Certificates = 0x0014,
X509CertificateIdAndSignature = 0x0015,
X509CertificateIdCentralDirectory = 0x0016,
StrongEncryptionHeader = 0x0017,
RecordManagementControls = 0x0018,
Pkcs7EncryptionRecipientCertificateList = 0x0019,
ReservedTimestampRecord = 0x0020,
PolicyDecryptionKeyRecord = 0x0021,
SmartcryptKeyProviderRecord = 0x0022,
SmartcryptPolicyKeyDataRecord = 0x0023,
IbmS390As400Attributes = 0x0065,
ReservedIbmS390As400AttributesCompressed = 0x0066,
Macintosh = 0x07c8,
PixarUsdHeader = 0x1986,
ZipItMacintosh = 0x2605,
ZipItMacintosh135Plus = 0x2705,
ZipItMacintosh135PlusAlt = 0x2805,
InfoZipMacintosh = 0x334d,
Tandem = 0x4154,
AcornSparkFs = 0x4341,
WindowsNtSecurityDescriptor = 0x4453,
Poszip4690 = 0x4690,
VmCms = 0x4704,
Mvs = 0x470f,
TheosOld = 0x4854,
FwkcsMd5 = 0x4b46,
Os2AccessControlList = 0x4c41,
InfoZipOpenVms = 0x4d49,
MacintoshSmartzip = 0x4d63,
XceedOriginalLocation = 0x4f4c,
AosVsAcl = 0x5356,
ExtendedTimestamp = 0x5455,
XceedUnicode = 0x554e,
InfoZipUnixOriginal = 0x5855,
UnicodeComment = 0x6375,
BeOsBeBox = 0x6542,
Theos = 0x6854,
UnicodePath = 0x7075,
AtheosSyllable = 0x7441,
AsiUnix = 0x756e,
InfoZipUnixNew = 0x7855,
InfoZipUnixNewerUidGid = 0x7875,
AeXEncryption = 0x9901,
Unknown9902 = 0x9902,
DataStreamAlignment = 0xa11e,
MicrosoftOpenPackagingGrowthHint = 0xa220,
JavaJar = 0xcafe,
AndroidZipAlignment = 0xd935,
KoreanZipCodePageInfo = 0xe57a,
SmsQdos = 0xfd4a,
}
impl ExtraFieldId {
#[must_use]
pub const fn as_u16(self) -> u16 {
self as u16
}
}
pub const EXTRA_FIELD_MAPPING: [u16; 59] = [
ExtraFieldId::Zip64ExtendedInfo.as_u16(),
ExtraFieldId::AvInfo.as_u16(),
ExtraFieldId::ReservedExtendedLanguageEncoding.as_u16(),
ExtraFieldId::Os2.as_u16(),
ExtraFieldId::Ntfs.as_u16(),
ExtraFieldId::OpenVms.as_u16(),
ExtraFieldId::Unix.as_u16(),
ExtraFieldId::ReservedFileStreamAndForkDescriptors.as_u16(),
ExtraFieldId::PatchDescriptor.as_u16(),
ExtraFieldId::Pkcs7StoreForX509Certificates.as_u16(),
ExtraFieldId::X509CertificateIdAndSignature.as_u16(),
ExtraFieldId::X509CertificateIdCentralDirectory.as_u16(),
ExtraFieldId::StrongEncryptionHeader.as_u16(),
ExtraFieldId::RecordManagementControls.as_u16(),
ExtraFieldId::Pkcs7EncryptionRecipientCertificateList.as_u16(),
ExtraFieldId::ReservedTimestampRecord.as_u16(),
ExtraFieldId::PolicyDecryptionKeyRecord.as_u16(),
ExtraFieldId::SmartcryptKeyProviderRecord.as_u16(),
ExtraFieldId::SmartcryptPolicyKeyDataRecord.as_u16(),
ExtraFieldId::IbmS390As400Attributes.as_u16(),
ExtraFieldId::ReservedIbmS390As400AttributesCompressed.as_u16(),
ExtraFieldId::Macintosh.as_u16(),
ExtraFieldId::PixarUsdHeader.as_u16(),
ExtraFieldId::ZipItMacintosh.as_u16(),
ExtraFieldId::ZipItMacintosh135Plus.as_u16(),
ExtraFieldId::ZipItMacintosh135PlusAlt.as_u16(),
ExtraFieldId::InfoZipMacintosh.as_u16(),
ExtraFieldId::Tandem.as_u16(),
ExtraFieldId::AcornSparkFs.as_u16(),
ExtraFieldId::WindowsNtSecurityDescriptor.as_u16(),
ExtraFieldId::Poszip4690.as_u16(),
ExtraFieldId::VmCms.as_u16(),
ExtraFieldId::Mvs.as_u16(),
ExtraFieldId::TheosOld.as_u16(),
ExtraFieldId::FwkcsMd5.as_u16(),
ExtraFieldId::Os2AccessControlList.as_u16(),
ExtraFieldId::InfoZipOpenVms.as_u16(),
ExtraFieldId::MacintoshSmartzip.as_u16(),
ExtraFieldId::XceedOriginalLocation.as_u16(),
ExtraFieldId::AosVsAcl.as_u16(),
ExtraFieldId::ExtendedTimestamp.as_u16(),
ExtraFieldId::XceedUnicode.as_u16(),
ExtraFieldId::InfoZipUnixOriginal.as_u16(),
ExtraFieldId::UnicodeComment.as_u16(),
ExtraFieldId::BeOsBeBox.as_u16(),
ExtraFieldId::Theos.as_u16(),
ExtraFieldId::UnicodePath.as_u16(),
ExtraFieldId::AtheosSyllable.as_u16(),
ExtraFieldId::AsiUnix.as_u16(),
ExtraFieldId::InfoZipUnixNew.as_u16(),
ExtraFieldId::InfoZipUnixNewerUidGid.as_u16(),
ExtraFieldId::AeXEncryption.as_u16(),
ExtraFieldId::Unknown9902.as_u16(),
ExtraFieldId::DataStreamAlignment.as_u16(),
ExtraFieldId::MicrosoftOpenPackagingGrowthHint.as_u16(),
ExtraFieldId::JavaJar.as_u16(),
ExtraFieldId::AndroidZipAlignment.as_u16(),
ExtraFieldId::KoreanZipCodePageInfo.as_u16(),
ExtraFieldId::SmsQdos.as_u16(),
];