This commit is contained in:
Matt Nadareski
2020-07-30 17:03:10 -07:00
parent 9ed8d0e4b9
commit 88d0d043ef
2 changed files with 0 additions and 342 deletions

View File

@@ -2,35 +2,6 @@
{
#region Archival
/// <summary>
/// Version of tool archive made by
/// </summary>
public enum ArchiveVersion : ushort
{
MSDOSandOS2 = 0,
Amiga = 1,
OpenVMS = 2,
UNIX = 3,
VMCMS = 4,
AtariST = 5,
OS2HPFS = 6,
Macintosh = 7,
ZSystem = 8,
CPM = 9,
WindowsNTFS = 10,
MVS = 11,
VSE = 12,
AcornRisc = 13,
VFAT = 14,
AlternateMVS = 15,
BeOS = 16,
Tandem = 17,
OS400 = 18,
OSXDarwin = 19,
TorrentZip = 20,
TorrentZip64 = 45,
}
/// <summary>
/// Compression being used in CHD
/// </summary>
@@ -156,88 +127,6 @@
TorrentZPAQ,
}
/// <summary>
/// RAR extra area flag
/// </summary>
public enum RarExtraAreaFlag : uint
{
FileEncryption = 0x01,
FileHash = 0x02,
FileTime = 0x03,
FileVersion = 0x04,
Redirection = 0x05,
UnixOwner = 0x06,
ServiceData = 0x07,
}
/// <summary>
/// RAR header types
/// </summary>
public enum RarHeaderType : uint
{
MainArchiveHeader = 1,
File = 2,
Service = 3,
ArchiveEncryption = 4,
EndOfArchive = 5,
}
/// <summary>
/// RAR entry redirection type
/// </summary>
public enum RarRedirectionType : uint
{
UnixSymlink = 0x0001,
WindowsSymlink = 0x0002,
WindowsJunction = 0x0003,
HardLink = 0x0004,
FileCopy = 0x0005,
}
/// <summary>
/// 7zip Properties
/// </summary>
public enum SevenZipProperties : uint
{
kEnd = 0x00,
kHeader = 0x01,
kArchiveProperties = 0x02,
kAdditionalStreamsInfo = 0x03,
kMainStreamsInfo = 0x04,
kFilesInfo = 0x05,
kPackInfo = 0x06,
kUnPackInfo = 0x07,
kSubStreamsInfo = 0x08,
kSize = 0x09,
kCRC = 0x0A,
kFolder = 0x0B,
kCodersUnPackSize = 0x0C,
kNumUnPackStream = 0x0D,
kEmptyStream = 0x0E,
kEmptyFile = 0x0F,
kAnti = 0x10,
kName = 0x11,
kCTime = 0x12,
kATime = 0x13,
kMTime = 0x14,
kWinAttributes = 0x15,
kComment = 0x16,
kEncodedHeader = 0x17,
kStartPos = 0x18,
kDummy = 0x19,
}
#endregion
#region DatFile related

View File

@@ -2,237 +2,6 @@
namespace SabreTools.Library.Data
{
#region Archival
/// <summary>
/// Determines the level to scan archives at
/// </summary>
[Flags]
public enum ArchiveScanLevel
{
// 7zip
SevenZipExternal = 1 << 0,
SevenZipInternal = 1 << 1,
SevenZipBoth = SevenZipExternal | SevenZipInternal,
// GZip
GZipExternal = 1 << 2,
GZipInternal = 1 << 3,
GZipBoth = GZipExternal | GZipInternal,
// RAR
RarExternal = 1 << 4,
RarInternal = 1 << 5,
RarBoth = RarExternal | RarInternal,
// Zip
ZipExternal = 1 << 6,
ZipInternal = 1 << 7,
ZipBoth = ZipExternal | ZipInternal,
// Tar
TarExternal = 1 << 8,
TarInternal = 1 << 9,
TarBoth = TarExternal | TarInternal,
}
/// <summary>
/// Determines the archive general bit flags
/// </summary>
[Flags]
public enum GeneralPurposeBitFlag : ushort
{
Encrypted = 1 << 0,
ZeroedCRCAndSize = 1 << 3,
CompressedPatchedData = 1 << 5,
StrongEncryption = 1 << 6,
LanguageEncodingFlag = 1 << 11,
EncryptedCentralDirectory = 1 << 13,
// For Method 6 - Imploding
Imploding8KSlidingDictionary = 1 << 1,
Imploding3ShannonFanoTrees = 1 << 2,
// For Methods 8 and 9 - Deflating
DeflatingMaximumCompression = 1 << 1,
DeflatingFastCompression = 1 << 2,
DeflatingSuperFastCompression = 1 << 1 | 1 << 2,
EnhancedDeflating = 1 << 4,
// For Method 14 - LZMA
LZMAEOSMarkerUsed = 1 << 1,
// Reserved and unused (SHOULD NOT BE USED)
Bit7 = 1 << 7,
Bit8 = 1 << 8,
Bit9 = 1 << 9,
Bit10 = 1 << 10,
Bit12 = 1 << 12, // Reserved by PKWARE for enhanced compression
Bit14 = 1 << 14, // Reserved by PKWARE
Bit15 = 1 << 15, // Reserved by PKWARE
}
/// <summary>
/// Internal file attributes used by archives
/// </summary>
[Flags]
public enum InternalFileAttributes : ushort
{
ASCIIOrTextFile = 1 << 0,
RecordLengthControl = 1 << 1,
// Reserved and unused (SHOULD NOT BE USED)
Bit1 = 1 << 1,
Bit2 = 1 << 2,
}
/// <summary>
/// RAR archive flags
/// </summary>
[Flags]
public enum RarArchiveFlags : uint
{
/// <summary>
/// Volume. Archive is a part of multivolume set.
/// </summary>
Volume = 1 << 0,
/// <summary>
/// Volume number field is present. This flag is present in all volumes except first.
/// </summary>
VolumeNumberField = 1 << 1,
/// <summary>
/// Solid archive.
/// </summary>
Solid = 1 << 2,
/// <summary>
/// Recovery record is present.
/// </summary>
RecoveryRecordPresent = 1 << 3,
/// <summary>
/// Locked archive.
/// </summary>
Locked = 1 << 4,
}
/// <summary>
/// RAR entry encryption flags
/// </summary>
[Flags]
public enum RarEncryptionFlags : uint
{
PasswordCheckDataPresent = 1 << 0,
UseTweakedChecksums = 1 << 1,
/*
If flag 0x0002 is present, RAR transforms the checksum preserving file or service data integrity, so it becomes dependent on
encryption key. It makes guessing file contents based on checksum impossible. It affects both data CRC32 in file header and
checksums in file hash record in extra area.
*/
}
/// <summary>
/// RAR file flags
/// </summary>
[Flags]
public enum RarFileFlags : uint
{
/// <summary>
/// Directory file system object (file header only)
/// </summary>
Directory = 1 << 0,
/// <summary>
/// Time field in Unix format is present
/// </summary>
TimeInUnix = 1 << 1,
/// <summary>
/// CRC32 field is present
/// </summary>
CRCPresent = 1 << 2,
/// <summary>
/// Unpacked size is unknown
/// </summary>
UnpackedSizeUnknown = 1 << 3,
/*
If flag 0x0008 is set, unpacked size field is still present, but must be ignored and extraction
must be performed until reaching the end of compression stream. This flag can be set if actual
file size is larger than reported by OS or if file size is unknown such as for all volumes except
last when archiving from stdin to multivolume archive
*/
}
/// <summary>
/// RAR header flags
/// </summary>
[Flags]
public enum RarHeaderFlags : uint
{
/// <summary>
/// Extra area is present in the end of header
/// </summary>
ExtraAreaPresent = 1 << 0,
/// <summary>
/// Data area is present in the end of header
/// </summary>
DataAreaPresent = 1 << 1,
/// <summary>
/// Blocks with unknown type and this flag must be skipped when updating an archive
/// </summary>
BlocksWithUnknownType = 1 << 2,
/// <summary>
/// Data area is continuing from previous volume
/// </summary>
DataAreaContinuingFromPrevious = 1 << 3,
/// <summary>
/// Data area is continuing in next volume
/// </summary>
DataAreaContinuingToNext = 1 << 4,
/// <summary>
/// Block depends on preceding file block
/// </summary>
BlockDependsOnPreceding = 1 << 5,
/// <summary>
/// Preserve a child block if host block is modified
/// </summary>
PreserveChildBlock = 1 << 6,
}
[Flags]
public enum RarUnixOwnerRecordFlags : uint
{
UserNameStringIsPresent = 1 << 0,
GroupNameStringIsPresent = 1 << 1,
NumericUserIdIsPresent = 1 << 2,
NumericGroupIdIsPresent = 1 << 3,
}
/// <summary>
/// RAR entry time flags
/// </summary>
[Flags]
public enum RarTimeFlags : uint
{
TimeInUnixFormat = 1 << 0,
ModificationTimePresent = 1 << 1,
CreationTimePresent = 1 << 2,
LastAccessTimePresent = 1 << 3,
}
#endregion
#region DatFile related
/// <summary>