tarheader.h

来自「由7-zip提供的压缩、解压缩程序」· C头文件 代码 · 共 99 行

H
99
字号
// Archive/Tar/Header.h#ifndef __ARCHIVE_TAR_HEADER_H#define __ARCHIVE_TAR_HEADER_H#include "Common/Types.h"namespace NArchive {namespace NTar {namespace NFileHeader{  const int kRecordSize = 512;  const int kNameSize = 100;  const int kUserNameSize = 32;  const int kGroupNameSize = 32;  const int kPrefixSize = 155;  /*  struct CHeader  {    char Name[kNameSize];    char Mode[8];    char UID[8];    char GID[8];    char Size[12];    char ModificationTime[12];    char CheckSum[8];    char LinkFlag;    char LinkName[kNameSize];    char Magic[8];    char UserName[kUserNameSize];    char GroupName[kGroupNameSize];    char DeviceMajor[8];    char DeviceMinor[8];    char Prefix[155];  };  union CRecord  {    CHeader Header;    Byte Padding[kRecordSize];  };  */  namespace NMode  {    const int kSetUID   = 04000;  // Set UID on execution    const int kSetGID   = 02000;  // Set GID on execution     const int kSaveText = 01000;  // Save text (sticky bit)  }  namespace NFilePermissions  {    const int kUserRead     = 00400;  // read by owner    const int kUserWrite    = 00200;  // write by owner    const int kUserExecute  = 00100;  // execute/search by owner    const int kGroupRead    = 00040;  // read by group    const int kGroupWrite   = 00020;  // write by group    const int kGroupExecute = 00010;  // execute/search by group    const int kOtherRead    = 00004;  // read by other    const int kOtherWrite   = 00002;  // write by other    const int kOtherExecute = 00001;  // execute/search by other  }  // The linkflag defines the type of file  namespace NLinkFlag  {    const char kOldNormal    = '\0'; // Normal disk file, Unix compatible    const char kNormal       = '0'; // Normal disk file     const char kLink         = '1'; // Link to previously dumped file    const char kSymbolicLink = '2'; // Symbolic link    const char kCharacter    = '3'; // Character special file    const char kBlock        = '4'; // Block special file    const char kDirectory    = '5'; // Directory    const char kFIFO         = '6'; // FIFO special file    const char kContiguous   = '7'; // Contiguous file  }  // Further link types may be defined later.  // The checksum field is filled with this while the checksum is computed.  extern const char *kCheckSumBlanks;//   = "        ";   // 8 blanks, no null  extern const char *kLongLink; //   = "././@LongLink";  // The magic field is filled with this if uname and gname are valid.  namespace NMagic   {    extern const char *kUsTar; //   = "ustar"; // 5 chars    extern const char *kGNUTar; //  = "GNUtar "; // 7 chars and a null    extern const char *kEmpty; //  = "GNUtar "; // 7 chars and a null  }}}}#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?