diff options
Diffstat (limited to 'CPP/7zip/Archive/Cpio/CpioHeader.h')
-rwxr-xr-x | CPP/7zip/Archive/Cpio/CpioHeader.h | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/CPP/7zip/Archive/Cpio/CpioHeader.h b/CPP/7zip/Archive/Cpio/CpioHeader.h new file mode 100755 index 00000000..40a0014a --- /dev/null +++ b/CPP/7zip/Archive/Cpio/CpioHeader.h @@ -0,0 +1,70 @@ +// Archive/cpio/Header.h + +#ifndef __ARCHIVE_CPIO_HEADER_H +#define __ARCHIVE_CPIO_HEADER_H + +#include "Common/Types.h" + +namespace NArchive { +namespace NCpio { + +namespace NFileHeader +{ + namespace NMagic + { + extern const char *kMagic1; + extern const char *kMagic2; + extern const char *kMagic3; + extern const char *kEndName; + extern const Byte kMagicForRecord2[2]; + } + + const UInt32 kRecord2Size = 26; + /* + struct CRecord2 + { + unsigned short c_magic; + short c_dev; + unsigned short c_ino; + unsigned short c_mode; + unsigned short c_uid; + unsigned short c_gid; + unsigned short c_nlink; + short c_rdev; + unsigned short c_mtimes[2]; + unsigned short c_namesize; + unsigned short c_filesizes[2]; + }; + */ + + const UInt32 kRecordSize = 110; + /* + struct CRecord + { + char Magic[6]; // "070701" for "new" portable format, "070702" for CRC format + char inode[8]; + char Mode[8]; + char UID[8]; + char GID[8]; + char nlink[8]; + char mtime[8]; + char Size[8]; // must be 0 for FIFOs and directories + char DevMajor[8]; + char DevMinor[8]; + char RDevMajor[8]; //only valid for chr and blk special files + char RDevMinor[8]; //only valid for chr and blk special files + char NameSize[8]; // count includes terminating NUL in pathname + char ChkSum[8]; // 0 for "new" portable format; for CRC format the sum of all the bytes in the file + bool CheckMagic() const + { return memcmp(Magic, NMagic::kMagic1, 6) == 0 || + memcmp(Magic, NMagic::kMagic2, 6) == 0; }; + }; + */ + + const UInt32 kOctRecordSize = 76; + +} + +}} + +#endif |