1 #ifndef TAR_H 2 #define TAR_H 3 4 #define TYPEFLAG_AUTO '\0' 5 #define TYPEFLAG_REG '0' 6 #define TYPEFLAG_LNK '2' 7 #define TYPEFLAG_DIR '5' 8 #define TYPEFLAG_GLOBAL_HEADER 'g' 9 #define TYPEFLAG_EXT_HEADER 'x' 10 11 struct ustar_header { 12 char name[100]; /* 0 */ 13 char mode[8]; /* 100 */ 14 char uid[8]; /* 108 */ 15 char gid[8]; /* 116 */ 16 char size[12]; /* 124 */ 17 char mtime[12]; /* 136 */ 18 char chksum[8]; /* 148 */ 19 char typeflag[1]; /* 156 */ 20 char linkname[100]; /* 157 */ 21 char magic[6]; /* 257 */ 22 char version[2]; /* 263 */ 23 char uname[32]; /* 265 */ 24 char gname[32]; /* 297 */ 25 char devmajor[8]; /* 329 */ 26 char devminor[8]; /* 337 */ 27 char prefix[155]; /* 345 */ 28 }; 29 30 #endif /* TAR_H */ 31