5 * Tarpet - Tar struct definitions
7 * Placed in the public domain by Abigail Brady <morwen@evilmagic.org>
9 * Implemented from a definition provided by Rachel Hestilow,
10 * md5sum 7606d69d61dfc7eed10857a888136b62
12 * See documentation-1.1.txt for details.
35 #define TARPET_TYPE_REGULAR '\0'
36 #define TARPET_TYPE_REGULAR2 '0'
37 #define TARPET_TYPE_LINK '1'
38 #define TARPET_TYPE_SYMLINK '2'
39 #define TARPET_TYPE_CHARDEV '3'
40 #define TARPET_TYPE_BLOCKDEV '4'
41 #define TARPET_TYPE_DIRECTORY '5'
42 #define TARPET_TYPE_FIFO '6'
43 #define TARPET_TYPE_CONTIGUOUS '7'
45 #define TARPET_TYPE_DUMPDIR 'D'
46 #define TARPET_TYPE_LONGLINKN 'K'
47 #define TARPET_TYPE_LONGFILEN 'L'
48 #define TARPET_TYPE_MULTIVOL 'M'
49 #define TARPET_TYPE_LONGNAME 'N'
50 #define TARPET_TYPE_SPARSE 'S'
51 #define TARPET_TYPE_VOLUME 'V'
53 #define TARPET_GNU_MAGIC "ustar"
54 #define TARPET_GNU_MAGIC_OLD "ustar "
56 #define TARPET_GNU_VERSION "00"
59 * for the mode, #include <sys/types.h> and use
75 struct TARPET_sparsefile {
80 struct TARPET_GNU_ext {
87 struct TARPET_sparsefile sparse[16];
91 struct TARPET_GNU_ext_old {
97 struct TARPET_sparsefile sparse[4];
102 struct TARPET_GNU_sparseheader {
103 struct TARPET_sparsefile sparse[21];
107 struct TARPET_rawdata {
112 struct TARPET_POSIX p;
113 struct TARPET_GNU_ext gnu;
114 struct TARPET_GNU_ext_old gnu_old;
115 struct TARPET_GNU_sparseheader sparse;
116 struct TARPET_rawdata raw;