226 static final long ZIP64_ENDSIZ(byte[] b) { return LL(b, 40);} // central directory size |
236 static final long ZIP64_ENDSIZ(byte[] b) { return LL(b, 40);} // central directory size |
227 static final long ZIP64_ENDOFF(byte[] b) { return LL(b, 48);} // central directory offset |
237 static final long ZIP64_ENDOFF(byte[] b) { return LL(b, 48);} // central directory offset |
228 static final long ZIP64_LOCOFF(byte[] b) { return LL(b, 8);} // zip64 end offset |
238 static final long ZIP64_LOCOFF(byte[] b) { return LL(b, 8);} // zip64 end offset |
229 |
239 |
230 // central directory header (CEN) fields |
240 // central directory header (CEN) fields |
231 static final long CENSIG(byte[] b, int pos) { return LG(b, pos + 0); } |
241 static final long CENSIG(byte[] b, int pos) { return LG(b, pos + 0); } // signature |
232 static final int CENVEM(byte[] b, int pos) { return SH(b, pos + 4); } |
242 static final int CENVEM(byte[] b, int pos) { return SH(b, pos + 4); } // version made by |
233 static final int CENVER(byte[] b, int pos) { return SH(b, pos + 6); } |
243 static final int CENVEM_FA(byte[] b, int pos) { return CH(b, pos + 5); } // file attribute compatibility |
234 static final int CENFLG(byte[] b, int pos) { return SH(b, pos + 8); } |
244 static final int CENVER(byte[] b, int pos) { return SH(b, pos + 6); } // version needed to extract |
235 static final int CENHOW(byte[] b, int pos) { return SH(b, pos + 10);} |
245 static final int CENFLG(byte[] b, int pos) { return SH(b, pos + 8); } // encrypt, decrypt flags |
236 static final long CENTIM(byte[] b, int pos) { return LG(b, pos + 12);} |
246 static final int CENHOW(byte[] b, int pos) { return SH(b, pos + 10);} // compression method |
237 static final long CENCRC(byte[] b, int pos) { return LG(b, pos + 16);} |
247 static final long CENTIM(byte[] b, int pos) { return LG(b, pos + 12);} // modification time |
238 static final long CENSIZ(byte[] b, int pos) { return LG(b, pos + 20);} |
248 static final long CENCRC(byte[] b, int pos) { return LG(b, pos + 16);} // uncompressed file crc-32 value |
239 static final long CENLEN(byte[] b, int pos) { return LG(b, pos + 24);} |
249 static final long CENSIZ(byte[] b, int pos) { return LG(b, pos + 20);} // compressed size |
240 static final int CENNAM(byte[] b, int pos) { return SH(b, pos + 28);} |
250 static final long CENLEN(byte[] b, int pos) { return LG(b, pos + 24);} // uncompressed size |
241 static final int CENEXT(byte[] b, int pos) { return SH(b, pos + 30);} |
251 static final int CENNAM(byte[] b, int pos) { return SH(b, pos + 28);} // filename length |
242 static final int CENCOM(byte[] b, int pos) { return SH(b, pos + 32);} |
252 static final int CENEXT(byte[] b, int pos) { return SH(b, pos + 30);} // extra field length |
243 static final int CENDSK(byte[] b, int pos) { return SH(b, pos + 34);} |
253 static final int CENCOM(byte[] b, int pos) { return SH(b, pos + 32);} // comment length |
244 static final int CENATT(byte[] b, int pos) { return SH(b, pos + 36);} |
254 static final int CENDSK(byte[] b, int pos) { return SH(b, pos + 34);} // disk number start |
245 static final long CENATX(byte[] b, int pos) { return LG(b, pos + 38);} |
255 static final int CENATT(byte[] b, int pos) { return SH(b, pos + 36);} // internal file attributes |
246 static final long CENOFF(byte[] b, int pos) { return LG(b, pos + 42);} |
256 static final long CENATX(byte[] b, int pos) { return LG(b, pos + 38);} // external file attributes |
|
257 static final int CENATX_PERMS(byte[] b, int pos) { return SH(b, pos + 40);} // posix permission data |
|
258 static final long CENOFF(byte[] b, int pos) { return LG(b, pos + 42);} // LOC header offset |
247 |
259 |
248 /* The END header is followed by a variable length comment of size < 64k. */ |
260 /* The END header is followed by a variable length comment of size < 64k. */ |
249 static final long END_MAXLEN = 0xFFFF + ENDHDR; |
261 static final long END_MAXLEN = 0xFFFF + ENDHDR; |
250 static final int READBLOCKSZ = 128; |
262 static final int READBLOCKSZ = 128; |
251 } |
263 } |