1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.vfs.provider.tar;
18
19 /***
20 * This interface contains all the definitions used in the package.
21 *
22 * @author <a href="mailto:time@ice.com">Timothy Gerard Endres</a>
23 * @author <a href="mailto:stefano@apache.org">Stefano Mazzocchi</a>
24 * @version $Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Mi, 29 Nov 2006) $
25 */
26 interface TarConstants
27 {
28 /***
29 * The length of the mode field in a header buffer.
30 */
31 int MODELEN = 8;
32
33 /***
34 * The length of the user id field in a header buffer.
35 */
36 int UIDLEN = 8;
37
38 /***
39 * The length of the group id field in a header buffer.
40 */
41 int GIDLEN = 8;
42
43 /***
44 * The length of the checksum field in a header buffer.
45 */
46 int CHKSUMLEN = 8;
47
48 /***
49 * The length of the size field in a header buffer.
50 */
51 int SIZELEN = 12;
52
53 /***
54 * The length of the magic field in a header buffer.
55 */
56 int MAGICLEN = 8;
57
58 /***
59 * The length of the modification time field in a header buffer.
60 */
61 int MODTIMELEN = 12;
62
63 /***
64 * The length of the user name field in a header buffer.
65 */
66 int UNAMELEN = 32;
67
68 /***
69 * The length of the group name field in a header buffer.
70 */
71 int GNAMELEN = 32;
72
73 /***
74 * The length of the devices field in a header buffer.
75 */
76 int DEVLEN = 8;
77
78 /***
79 * LF_ constants represent the "link flag" of an entry, or more commonly,
80 * the "entry type". This is the "old way" of indicating a normal file.
81 */
82 byte LF_OLDNORM = 0;
83
84 /***
85 * Normal file type.
86 */
87 byte LF_NORMAL = (byte)'0';
88
89 /***
90 * Link file type.
91 */
92 byte LF_LINK = (byte)'1';
93
94 /***
95 * Symbolic link file type.
96 */
97 byte LF_SYMLINK = (byte)'2';
98
99 /***
100 * Character device file type.
101 */
102 byte LF_CHR = (byte)'3';
103
104 /***
105 * Block device file type.
106 */
107 byte LF_BLK = (byte)'4';
108
109 /***
110 * Directory file type.
111 */
112 byte LF_DIR = (byte)'5';
113
114 /***
115 * FIFO (pipe) file type.
116 */
117 byte LF_FIFO = (byte)'6';
118
119 /***
120 * Contiguous file type.
121 */
122 byte LF_CONTIG = (byte)'7';
123
124 /***
125 * The magic tag representing a POSIX tar archive.
126 */
127 String TMAGIC = "ustar";
128
129 /***
130 * The magic tag representing a GNU tar archive.
131 */
132 String GNU_TMAGIC = "ustar ";
133
134 /***
135 * The namr of the GNU tar entry which contains a long name.
136 */
137 String GNU_LONGLINK = "././@LongLink";
138
139 /***
140 * Identifies the *next* file on the tape as having a long name.
141 */
142 byte LF_GNUTYPE_LONGNAME = (byte)'L';
143 }